Выполнение mysqli_query работает, но оно не возвращает точную строку, заданную в WHERE CLAUSE - PullRequest
0 голосов
/ 21 октября 2018

Запрос выполняется .. но скажем, например, что пользователь изменил значение $ _GET ['sub'], чтобы получить идентификатор, которого нет в базе данных, скажем, например: 60.он должен напечатать «НЕ НАЙДЕНО», вместо этого он печатает найденоПочему это так?

 $main = new  MainClass();

 $subid = mysqli_real_escape_string($main->MsqlConRes,$_GET['sub']);

if (is_numeric($subid))
{
    $main->query = mysqli_query($main->MsqlConRes,"SELECT * FROM subjects WHERE id = ".$subid."") or die(mysqli_error());
    if ($main->query)
    {
        echo'Found';
    }
    else
        echo'Not Found !';
}
else
    $main->errors(404);

1 Ответ

0 голосов
/ 21 октября 2018

использовать mysqli_num_row() в if

if (mysqli_num_row($main->query)>0)
    {
        echo'Found';
    }
    else
        echo'Not Found !';

Поскольку запрос выполняется правильно, поэтому if ($main->query) всегда будет истинным

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