За последние 24 часа нас посетили 17888 программистов и 1571 робот. Сейчас ищут 1130 программистов ...

php5+MySQL5+Apache2 on WinXP проблема с кодировками!

Тема в разделе "Установка PHP", создана пользователем Kroshemin, 8 авг 2006.

  1. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    Все поставил, все прописал, все работает.
    Кому надо, готов рассказать подробности.

    Не знаю только как в ПХП5 установить поддержку кодировок, отличных от latin. Помогите, пожалуйста!
     
  2. D.Lans

    D.Lans Активный пользователь

    С нами с:
    31 июл 2006
    Сообщения:
    345
    Симпатии:
    0
    Я забил на эту проблему и поставил себе четвертый мускуль. ;)
     
  3. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    От судьбы не уйдешь, да и ламером себя чувствовать не хочется. Потому и поднимаю вопрос. Как все самому настроить, чтоб все работало! Разработчики языка ведь не лохи. Как-то оно все у них вроде пашет.
     
  4. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Что ты подразумеваешь под поддержкой кодировок в php5?
     
  5. D.Lans

    D.Lans Активный пользователь

    С нами с:
    31 июл 2006
    Сообщения:
    345
    Симпатии:
    0
    Kroshemin, ну не знаю, мне свои нервы дороже.
    Для решения этой пробелемы нужно какой-то запрос вставлять после каждого соединения с БД.
    А это лишний гимор при программировании. И лишние тормоза.
    Вывод: зачем это надо?

    vasa_c, он подразумевает то, что при попытке вставить русские буквы в поле в таблицу в БД в mysql 5 вылазит ошибка типа:
    #1406 - Data too long for column 'title' at row 1
    Смена кодировки БД, таблицы и т.д. не помогает.
    Англ. яз прекрасно вставляется.
     
  6. D.Lans

    D.Lans Активный пользователь

    С нами с:
    31 июл 2006
    Сообщения:
    345
    Симпатии:
    0
    Ну конечно не лохи.
    Сделали, что английский язык батрачил и забили на все остальные.. :-o
     
  7. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    проблема-то в чем?
     
  8. D.Lans

    D.Lans Активный пользователь

    С нами с:
    31 июл 2006
    Сообщения:
    345
    Симпатии:
    0
    440hz
    я же описал выше:
    при попытке вставить русские буквы в поле в таблицу в БД в mysql 5 вылазит ошибка типа:
    #1406 - Data too long for column 'title' at row 1
    Смена кодировки БД, таблицы и т.д. не помогает.
    Англ. яз прекрасно вставляется.

    Полагаю об этом глюке и говорит автор.
     
  9. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Я от него этого не слышал. Может у него вопросики в базе появляются.

    Kroshemin, расскажешь что-нибудь по-подробнее?
     
  10. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    1. я автора и спрашиваю.
    2. работать в utf-8 и пофиг ей что на входе ...
     
  11. D.Lans

    D.Lans Активный пользователь

    С нами с:
    31 июл 2006
    Сообщения:
    345
    Симпатии:
    0
    Не будет работать!
    У mySQL 5 видимо аллергия на русские буквы.
     
  12. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    У меня на выходе MySQL винодвс-1251 кодировка. Я бы с удовольствием перелез как все нормальные люди, на utf-8, но есть два НО!
    1. На ней уже висят чужие проекты, котовые криво написаны и будут плеватьса - это проверенно.
    2. Главное - я хочу получить нормальную, полную, толковую сборку ПХП5! Чего и всем желаю.
     
  13. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    Вот о чем я, главным образом, говорю.
    http://ua2.php.net/mysql/
    "Замечание: Если вам требуется поддержка кодировок (отличных от latin, установленной по умолчанию), вам придётся установить внешнюю библиотеку, скомпилированную с их поддержкой."
     
  14. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    Такую фигню я давно видел в четвертой версии - менять надо длину или тип колонки, т.к. для разных типов колонок эта цыферка может значить к-во букв или к-во информации (бит)! А это две большие разници!

    Лично я, внутри базы всегда пользую УТФ-8 кодировки, кроме колонок содержащих пароли - для них обязательно та же кодировка, что на выходе! Это решает много проблем.
     
  15. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Kroshemin, для windows-1251 в начале сценария делай:
    Код (Text):
    1. set names cp1251
    Тем по данному поводу море.
     
  16. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    Спасибо, сейчас попробую!
    Только это частный случай, может знаешь че в php.ini вписать, чтоб эта кодировка всегда имелась?

    Где? Не одаришь ли ссылочкой.

    НО ВОБЩЕ ЭТО УЖЕ ЧТО-ТО!
    Продолжим?
     
  17. simpson

    simpson Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    1.650
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
  18. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда

    я храню md5() а не пароли.
     
  19. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    ,
    Хорошая инфа! Спасибо!
    Но вопрос был о сборке или настройке ПХП!, а не о том как у сервера баз настраивать кодировку на выходе, или спрашивать текущую. А цитата и инфа об этом.
     
  20. Kroshemin

    Kroshemin Активный пользователь

    С нами с:
    8 авг 2006
    Сообщения:
    8
    Симпатии:
    0
    Правильно.
    А я только о том, что если ты пользуешься функцией PASSWORD() MySQLя для шифрования и храниш результат в колонке с кодировкой отличной от входной/выходной, то, вероятно, пароли введенные кирилицей не будут работать (реч идет о паролях, например, для пользователей твоего сайта, работающего с MySQL). Причину не знаю, но проверил на практике - так и есть. Вероятно, дело в алгоритме кодировки.