我有以下代码:
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包含的数据如“我的名字是anna”,$ desc的数据类似于“我是xyz公司的程序员,我在PHP平台上工作。”
然而,它给出了这个错误:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /bin/whatever on line 2005
但是当我在命令提示符或我的数据库中运行此查询时,它运行正常,没有错误。
为什么这个查询在我通过PHP运行时会出错?
答案 0 :(得分:3)
您没有运行查询。您可能还想检查您的查询(例如,如果它失败或将其记录到文件,则将其打印到屏幕上)。看起来有点奇怪。
$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);