поисковая система php mysql не находит результатов

Я пытаюсь сделать простой поисковик. Моя проблема в том, что каждый код, который я пробую, приносит мне один и тот же результат: «Найдено 0 результатов». Моя база данных заполнена, и когда я помещаю в нее свой SQL-запрос, он возвращает мне результат, который я ищу.
Я пробовал этот код также из stackoverflow PHP скрипт поисковой системы это вернуло 1 результат для человека, задающего этот вопрос, и все, что я получаю, это сообщение «Извините, нет подходящих результатов». Чтобы написать этот код, я пошагово пошёл по руководству youtube за phpacademy, и снова произошло то же самое. Я прочитал все комментарии под руководством, чтобы узнать, сталкивался ли кто-нибудь с такой же проблемой, но она отлично работала для всех. Я понятия не имею, что я делаю неправильно, и буду очень признателен, если кто-нибудь сможет мне помочь.

Это форма из моего файла HTML:

<body>
<form action="eatsearch.php" method="get">
<label>
Search
<input type="text" name="keywords" placeholder = "Type to search..">
</label>

<input type="submit" value="Search">

а это мой php:

    <?php
require_once('config.php');

if(isset($_GET['keywords'])) {

$keywords = $connect->escape_string($_GET['keywords']);

$query = $connect->query("SELECT rname, tel, url, food
FROM general WHERE food LIKE '%{keywords}%'");

?>

<div class="result-count">
Found <?php echo $query->num_rows; ?> results.
</div>

<?php

if($query->num_rows) {
while($result = $query->fetch_object()) {
?>

<div class = "result">
<a href="#"><?php echo $result->rname;?></a>
</div>
<?php

}
}
}

?>

-1

Решение

Ключевые слова без $?
Положить $ ключевые слова

0

Другие решения

Ваша ошибка здесь:

$query = $connect->query("SELECT rname, tel, url, food FROM general WHERE food LIKE '%{keywords}%'");

Так должно быть:

$query = $connect->query("SELECT rname, tel, url, food
FROM general WHERE food LIKE '%{$keywords}%'");

Вы забыли свой $ знак перед keywords переменная.

0

По вопросам рекламы [email protected]