вопрос MySQL - PullRequest
       12

вопрос MySQL

0 голосов
/ 11 сентября 2011

У меня небольшая проблема:

Я получаю несколько параметров через ajax и делаю SQL-запрос. Простой, но в этом запросе есть некоторые специальные символы (бразильский), и мой запрос выглядит так (как я сделал эхо):

SELECT neigh 
FROM address_bd 
WHERE 
  state ="AL" 
  AND city ="Maceió" 
GROUP BY neigh 
ORDER BY neigh ASC

и в скрипте есть:

$sql = "
  SELECT neigh 
  FROM address_bd 
  WHERE state =\"$state\" 
    AND city =\"$city\" 
  GROUP BY neigh 
  ORDER BY neigh ASC
  ";

Запуск его в phpmyadmin вернет правильный результат, но в скрипте даст 0 результатов. Моя строка sql имеет utf8_general_ci. У кого-нибудь есть идеи? Спасибо.

И вот идет ответ:

SET character_set_client = utf8;

Это решило проблему. Спасибо всем и особенно Инке за отправку ссылки. Еще раз спасибо

Ответы [ 2 ]

1 голос
/ 11 сентября 2011

у вас должен быть mysql_set_charset(charset); или соответствующий оператор для вашего драйвера базы данных, размещенный сразу после вашего оператора соединения с базой данных.

и charset должны представлять фактическую кодировку ваших HTML-страниц.

0 голосов
/ 11 сентября 2011

Может быть попробовать это:

$sql = "SELECT neigh FROM address_bd WHERE state = '$state' AND city = '$city' GROUP BY neigh ORDER BY neigh ASC";

Если это все еще не работает, добавьте это после функции mysql_query

print mysql_error();

и сообщите здесь содержание сообщения об ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...