Кодировка в базе mysql

Тема в разделе "PHP", создана пользователем vanderv, 28 фев 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. vanderv

    vanderv

    Регистр.:
    30 май 2009
    Сообщения:
    267
    Симпатии:
    12
    Не знаю... Файл в одинаковой кодировке, все аккуратно...
    А после записи в базу получаем РҐРѕРґРѕСЃ это Ольга так у нас записана. Хз в чём проблема. Подскажите плз. Может как-то показать базе в какой кодировке записать данные...
     
  2. Ins1ne

    Ins1ne Постоялец

    Регистр.:
    26 авг 2009
    Сообщения:
    89
    Симпатии:
    25
    Ну во-первых посмотрите, чтобы поля в базе имели кодировку utf8_general_ci (желательно), далее после подключения к бд можно сделать
    PHP:
    $query="SET NAMES 'utf8'";

    $result mysql_query ($query)   or die ("<strong>Query failed </strong><br>line: ".__line__."<br>file: ".__file__."<br>error: ".mysql_error());
    еще можно в файле .htaccess добавить строчку
    Лично я бы посоветовал не использовать кодировку cp1251_general_ci, но это ИМХО и отдельная тема для холивара :)
     
  3. lungsmoney

    lungsmoney Постоялец

    Регистр.:
    25 апр 2008
    Сообщения:
    81
    Симпатии:
    23
    сам файл исходник нужно сохранить в utf-8.
    И уже еге заливать в базу.
    notepad++ лучший помощник в таких случаях :ay:
     
  4. oxyqh

    oxyqh Читатель

    Заблокирован
    Регистр.:
    28 апр 2009
    Сообщения:
    18
    Симпатии:
    0
    Создаешь файл и сохраняешь его в кодировке utf-8.
    Базу данных и таблицы тоже в utf8_general_ci.

    И пишешь функцию соединения с базой данных и выделения таблицы. (в данной случае имя пользователь root, пароля нет, а база test)

    function db_connect()
    {
    $connection = @mysql_connect('localhost', 'root', '');
    if (!$connection)
    {
    return false;
    }
    if (!mysql_select_db('test'))
    {
    return false;
    }
    mysql_query ("set character_set_client='utf8'");
    mysql_query ("set character_set_results='utf8'");
    mysql_query ("set collation_connection='utf8_general_ci'");
    return $connection;
    }
     
  5. Yozik

    Yozik

    Регистр.:
    5 дек 2007
    Сообщения:
    239
    Симпатии:
    65
    Вот так делать не рекомендую - более правильно, думаю, было бы так:
    PHP:
    $connection mysql_connect('localhost''root''') or die (mysql_error());
    ибо отключение ошибок при подключении к базе очень часто вызывает хронический геморрой.:yahoo:
     
  6. ADyDyka

    ADyDyka Создатель

    Регистр.:
    19 янв 2010
    Сообщения:
    26
    Симпатии:
    5
    AddDefaultCharset utf-8 - веб сервер в результаты выдачи добавит header для браузера, в какой кодировке вы ему сообщаете результаты. Ни каким образом к mysql и вообще к вашей кодировке не имеет дела. Только для корректного отображения ваших данных в браузере.
     
  7. glilya

    glilya Писатель

    Регистр.:
    10 фев 2009
    Сообщения:
    5
    Симпатии:
    0
    Да лучше всего какую нибудь библиотеку использовать SimplrDb от Котерова или ADO
     
Статус темы:
Закрыта.