2016-03-09 3 views
-1

Итак, есть отличный учебник по созданию окна поиска с автозагрузкой here. И он отлично работает на моей базе данных Wordpress MySQL.Сделать PDO включенным полем поиска автозапуска с данными UTF8

Однако проблема с японскими иероглифами ... Я добавил следующую строку в PHP: $conn->exec("set names utf8"); что позволило мне правильно показать японские результаты, однако функция поиска не работает должным образом:
Это просто показывает, что все результаты отображаются во всей таблице, а не результат фильтрации.

Вот мой полный код:

if (isset($_GET['term'])){ 
    $return_arr = array(); 

    try { 
     $conn = new PDO("mysql:host=".DB_SERVER.";port=8889;dbname=".DB_NAME, DB_USER, DB_PASSWORD.""); 
     $conn->exec("set names utf8"); 
     $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

     $stmt = $conn->prepare('SELECT supplier_company FROM wp_teleapo_supplier'); 
     $stmt->execute(array('term' => '%'.$_GET['term'].'%')); 

     while($row = $stmt->fetch()) { 
      $return_arr[] = $row['supplier_company']; 
     } 

    } catch(PDOException $e) { 
     echo 'ERROR: ' . $e->getMessage(); 
    } 


    /* Toss back results as json encoded array. */ 
    echo json_encode($return_arr); 
} 

ответ

0

Проблема в вашем SQL заявления, вы не имеете where пункт

$stmt = $conn->prepare('SELECT supplier_company FROM wp_teleapo_supplier WHERE `term` LIKE ?'); 
$stmt->execute(array('%'.$_GET['term'].'%')); 
+0

Отлично! Спасибо что подметил это! – mesqueeb

 Смежные вопросы

  • Нет связанных вопросов^_^