2014-12-19 3 views
0

Я создаю функцию поиска PHP -PHP Ошибки поиска MySQL базы данных

$result=mysql_query($query); 
$numItems = mysql_num_rows($result); //Number of items that resulted from the query 
if ($numItems == 0) { 
    $query = "select * FROM $table WHERE (name LIKE '%$termSafe%' OR tags LIKE '%$termSafe%' OR search_tags LIKE '%$termSafe%' OR ingredients_1 LIKE '%$termSafe%') AND active=1 $queryOptions ORDER BY name ASC"; 
    $result=mysql_query($query); 
    $numItems = mysql_num_rows($result); 
    if ($numItems == 0) { 
     return('no results'); 
    } else { 
     return $result; 
    } 
} else { 
    return $result; 
} 

Когда я запускаю это, я получаю следующее сообщение об ошибке:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in

IF вытаскиваю что линия $ количество_элементов - он работает нормально? Что мне не хватает?

+0

:('E_DEPRECATED' –

+0

Когда' mysql_query() 'выходит из строя, что вам нужно сделать' эхо mysql_error() ', чтобы увидеть причину. – Barmar

ответ

0

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in

mysql_query возвращает логическое значение только тогда, когда false.

Вы должны быть обновлены до mysqli или PDO.

По крайней мере, избегайте значений, используя mysql_real_escape_string().

Вы должны проверить на наличие ошибок

$result = mysql_query($query); 
if (!$result) { 
    $message = 'Invalid query: ' . mysql_error() . "\n"; 
    $message .= 'Whole query: ' . $query; 
    die($message); 
} 
+0

я получаю следующее от этого затем @Meda 'Неверный запрос: не удается найти индекс FULLTEXT, соответствующий столбцу. Весь запрос: select *, match (name, tags, search_tags, components_1, directions_1) против ('side') AS score FROM deifratellirecipes WHERE (имя, теги, search_tags, components_1, directions_1) против ('side') AND active = 1' – jacob

+0

, и я избегаю строки в части функции поиска извините. – jacob

+0

@jacob добавить индекс 'ALTER TABLE deifratellirecipes ADD FULLTEXT (имя, теги, search_tags, components_1, direction_1);' см. [Этот вопрос] (http://stackoverflow.com/questions/9680472/cant-find-fulltext-index -matching-the-column-list-indexes-is-set) – meda

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