автозаполнение javascript не работает со всей информацией в базе данных - PullRequest
0 голосов
/ 24 августа 2018

Это первый раз, когда я публикую здесь вопрос, потому что обычно я могу найти ответ в ранее заданных вопросах, на этот раз мне показалось, что я не могу понять это самостоятельно, поэтому я рассчитываю на вашу помощь.

Дело в том, что я использую виджет автозаполнения jQuery для получения информации из моей базы данных с запросом на получение всех названий отелей из таблицы отелей, я уверен, что я получаю все отели, но автозаполнение, похоже, недля работы с некоторыми из них, например, у меня есть 5 отелей: batchmor, софитель драйв, софитель bartimela, марсель, юлиана.Когда я нажимаю «b», появляются batchmor и софитель bartimela, но когда я нажимаю «s», не появляется ни софитель драйвера, ни софитель bartimela, и я не знаю источника ошибки.

Я оставляю здесь код jQuery, который я использую для вызова внешнего файла PHP:

//javascript code 
<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/themes/base/minified/jquery-ui.min.css" type="text/css" /> 
   <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
   <script type="text/javascript" src="http://code.jquery.com/ui/1.10.1/jquery-ui.min.js"></script>
</head>
<body>
    <form>
         <input type="text" id="recherche" />
    </form>
    <script type="text/javascript">
       $('#recherche').autocomplete({
          source : 'cnxtobase.php'
        });
    </script>
</body>

, и есть код, который находится в файле cnxtobase.php

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

try{
    $conn = new PDO('mysql:host=localhost;dbname=Lodging','root','');
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $stmt = $conn->prepare('SELECT name FROM hotel WHERE name LIKE:term');
    $stmt->execute(array(':term' =>'%'.$_GET['term'].'%'));

    foreach ($stmt->fetchAll() as $value) {
        array_push($array, $value['name']);
    }
}catch(PDOException $e) {
    echo 'ERROR: ' . $e->getMessage();
}
echo json_encode($array);  

и моя база данных у меня есть

the database

Когда я использую автозаполнение с буквой 'B' или 'ba', я получу bachaumont, но и софительbaltimor, но когда я набираю 'S', я не получу софител балтимор, приятно знать, что я добавляю отель под названием soufitel, и когда я набираю 'SO', ничего не появляется, но когда я набираю 'sou', появляется soufitel.

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