В чем проблема в этом коде? - PullRequest
1 голос
/ 22 августа 2009

У меня есть следующий код:

function query_tip($title,$desc)
{
    $q1=("SELECT id, company, name FROM abc
            where ('$title' LIKE CONCAT('% ',company,' %') or
                   '$desc' LIKE CONCAT('% ',company,' %') or
                   '$title' LIKE CONCAT('% ',name,' %') or
                   '$desc' LIKE CONCAT('% ',name,' %'))
              AND company != ''
              AND name != ''");
    $r1=mysql_fetch_array($q1);
    $id=$r1['id'];
    return $id_nse;
}

Здесь $ title содержит данные типа «меня зовут Анна», а $ desc содержит данные типа «Я программист в компании xyz и работаю на платформе PHP».

Однако он выдает эту ошибку:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /bin/whatever on line 2005

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

Почему этот запрос выдает ошибку, когда я запускаю его через PHP?

1 Ответ

3 голосов
/ 22 августа 2009

Вы не выполняете свой запрос. Вы также можете проверить свой запрос (например, распечатать его на экране, если он не выполнен, или записать его в файл). Это выглядит немного странно.

$q1 = "SELECT id, company, name FROM abc where ('$title' LIKE CONCAT('% ',company,' %') or '$desc' LIKE CONCAT('% ',company,' %') or '$title' LIKE CONCAT('% ',name,' %') or '$desc' LIKE CONCAT('% ',name,' %')) AND company != '' AND name != ''";
$res = mysql_query($q1);
$r1 = mysql_fetch_array($res);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...