|
|
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
Всем привет =) Я начинающий Web программист, и у меня возникла такая беда, когда я ввожу данные в базу ( русские символы ) то на выводе они отображаются как "?????", хотя в самой phpMyAdmin в бд они отображаются нормально. Вот небольшой пример : Ввод данных : http:// client-bd.ru/add.php Вывод дынных : http:// client-bd.ru/lol.php Вот код ввода : Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. Вот код после ввода, он обращается в обработчик : Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. С бд он разговаривает через отдельный фаил подключения : Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. И вот сам вывод данных : Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Кодировка в БД ютф8, подскажите пожалуйста где я ошибся или что мне сделать для того что бы вывод данных был адекватным на русском языке. Зарание спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 11:28:03 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
А что это Вы свои PHP-шные проблемы несёте в форум по MySQL? Смотрите данные, которые находятся на сервере, с консоли сервера. Если там хрень - ищите косяк в своём PHP-коде, записывающем данные. Если там всё в порядке - ищите косяк в PHP-коде, который данные выводит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:03:38 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
Akina, давайте включим логику, если бы я не смотрел и не пересматривал ищя проблему я бы сюда не писал, 100 раз код пересмотрел полностью, и не нашёл ошибку, скорее всего ошибка в синтаксисе базы или самих страниц выводка, как изменить синтаксис или может ошибка не в этом. Не нужно давать глупые советы ( мол пересмотри т т.д. т.п. ) я обратился за помощью ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:10:58 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
wiseking, Я не знаток , но в работе пришлось сталкиваться с подобной проблемой ( только интерфейс C++ MFC). Код: plaintext 1. запрос покажет установленные кодировки, также необходимо посмотреть правила сравнения( collation). Скажу на основе С++ ->Советую вам посмотреть на описание функции mysql_query ( и аналог mysql_real_query), т.к. первая функция работает с ANSI строками( т.е. 1 байт на символ) , а вторая должна иметь еще и размерность(lenght) запроса.(Все в пределах языка С++). Т.е. возможно нужна отдельная функция, которая будет кодировать русские буквы в запросах.( на С++ использую MultiByteToWideChar( cp1251-UTF8) и наоборот . Часто возникает подобная проблема, если не установлена кодировка при соединении ( SET...) , но то с чем сталкивался я, это в основном выделения utf8 от 1 до 3х байт на символ( русские буквы 2) , а стандартные кодировки Windows и Linux( cp125 и koir8(могу заблуждаться)) на русские символы выделяют 1 байт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:23:24 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
wiseking, Akina имел ввиду, что вы привели в основном PHP код, а это другой раздел форума. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:24:59 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, Спасибо, но С++ я знаю плохо, поэтому облачно я понял что делать а вот как решить данную проблему в моей ситуации, увы нет =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:32:12 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
wiseking, Попробуйте добавле в раздел после коннекта к базе запрос: Код: plaintext Что вам показывает : Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:43:15 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, Код: php 1. нечего не дало, а то что ниже написали то это вообще неизвестный код... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:54:19 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, Код: php 1. тоже нечего не дало ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:55:01 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
wiseking, А как вы тогда определили что у вас utf8 кодировка БД? Запросы типа Код: plaintext Чтобы была возможность понять вашу проблему нужен результат этого запроса для 'char%' и 'colaltion'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 13:05:56 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'show global variables like 'char%' LIMIT 0, 30' at line 2 Вот что выдал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 13:30:54 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
а откуда at line 2? У меня запрос выполняется( скопипастил из ошибки) в гугле нету подобных проблем с этим запросом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 13:50:49 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
wisekingAkina, давайте включим логику, если бы я не смотрел и не пересматривал ищя проблему я бы сюда не писал Убедительно прошу Вас, ссылаясь ТОЛЬКО на информацию, которую Вы разместили в теме, указать (со ссылкой на конкретный фрагмент Вашего текста), корректны ли данные, размещённые в таблицах базы данных при просмотре их на консоли сервера (а не в PHP-клиенте с использованием приведённого кода), или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 15:43:04 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
Akina, Вы хоть сами поняли что написали ? Лично Я нет ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 16:51:32 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
Объясняю для непонимающих. У Вас цепочка от ввода корректных данных до вывода некорректных - длинная, состоящая из нескольких этапов. Чтобы понять, на каком этапе происходит порча данных, надо локализовать этот момент. Я предлагаю начать с деления процесса пополам - на часть от ввода до попадания данных в БД и от попадания данных в БД до вывода. Для этого необходимо проверить, корректны ли данные в базе. А это можно сделать только просмотром данных, лежащих в таблицах БД, с консоли сервера (во всех остальных случаях в цепи отображения будет присутствовать дополнительный клиент, который может внести свои "поправки"). Вы этого не сделали. Вы всё щупаете "края" процесса, тогда как надо лезть в середину. Ну иногда пытаетесь внести какие-нибудь коррективы, надеясь, что авось поможет... Так что Ваше "ищя проблему" сродни рассматриванию неработающего автомобильного двигателя при открытом капоте - сколько в него не пялься, проблема не устранится, и колесо пинать бессмысленно, надо хотя бы за провода подёргать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 18:43:24 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
Akina, В том то и дело то что данные в БД отображаются корректно но выводя их он пишет "???" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 18:48:17 |
|
||
|
Ввод и вывод данных с MySQL
|
|||
|---|---|---|---|
|
#18+
wiseking, header('Content-Type: text/html; charset=utf-8'); пробовали? PS. Если в базе всё нормально, то это точно проблемы на стороне пхп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 19:02:40 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39122324&tid=1832400]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 363ms |

| 0 / 0 |
