сделать запрос с é в качестве имени столбца в php drupal 7 - PullRequest
3 голосов
/ 28 августа 2011

Я получил эту таблицу с именем столбца Catégorie, которую я не могу переименовать (длинная история), и это меня очень беспокоит.

Кажется, я не могу запросить этот столбец.

Я получил следующий код

$query_brands = "SELECT distinct catégorie as merk FROM GSProduct";

    $resultBrands = $phpbb->query($query_brands);
    $brandArr = array();
    foreach($resultBrands as $brand){
        $brandArr[$brand->merk] = $brand->merk;
    }

В MySQL запрос работает нормально, но в PHP я получаю исключение:

PDOException: в meisjesschoenen_filter_form () (строка 198 /home/mediaspe/domains/mediaspex.be/public_html/juniorsteps/sites/all/modules/meisjesschoenen/meisjesschoenen.medule)

я пытался поместить его между ' ', но потом япросто получите 1 пустой результат вместо 7 результатов, которые я должен получить

Помощь очень важна !!

ОБНОВЛЕНИЕ:

Я нашел следующие строки кода в настройках.php и я добавили объявление сортировки, следующее:

array (
    'juniorsteps_gem' =>
    array (
      'database' => '*****',
      'username' => '*****',
      'password' => '*****?',
      'host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
'collation' => 'utf8_general_ci',
    ),

Также я обнаружил в mysql, что сортировка моей базы данных / таблицы также имеет вид utf8_general_ci, так что все должно быть в порядке.

UPDATE2 (не удалосьпока отвечаю сам)

Проблема была в моем файле.Я использовал notepad ++ для преобразования моего файла из ANSI в UTF 8, и теперь он работает.

Спасибо всем за толчок в нужном направлении !!

Ответы [ 2 ]

0 голосов
/ 29 августа 2011

Убедитесь, что файл, в который вы пишете инструкцию SQL, правильно закодирован, например, UTF-8.Это настройка в используемом вами редакторе.

В противном случае вы отправляете неверные символы в базу данных, поскольку вы получаете недопустимое исключение PDO.

0 голосов
/ 28 августа 2011

Вы должны использовать `quote вместо '.

Попробуйте использовать:

"SELECT distinct `catégorie` as merk FROM GSProduct";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...