Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 搜索引擎错误_Php_Search Engine - Fatal编程技术网

Php 搜索引擎错误

Php 搜索引擎错误,php,search-engine,Php,Search Engine,我在下面的代码中发现了问题。出现的问题是 注意:未定义的变量:C:\wamp\www\search\search.php中的i 第21行 及 警告:mysql_num_rows要求参数1为资源,布尔值 在第34行的C:\wamp\www\search\search.php中给出 第21行是$i++ 第34行是$num\u rows=mysql\u num\u rows$query 有人知道如何修复它吗?您只是在增加尚未赋值的变量 $i = 1; foreach ($terms as $each)

我在下面的代码中发现了问题。出现的问题是

注意:未定义的变量:C:\wamp\www\search\search.php中的i 第21行

警告:mysql_num_rows要求参数1为资源,布尔值 在第34行的C:\wamp\www\search\search.php中给出

第21行是$i++

第34行是$num\u rows=mysql\u num\u rows$query


有人知道如何修复它吗?

您只是在增加尚未赋值的变量

$i = 1;
foreach ($terms as $each){
        $i++;

        if($i == 1)
            $query .= "keywords LIKE '%$each%' ";
        else
            $query .= "OR keywords LIKE '%$each%' ";
    }
或者干脆去做

foreach ($terms as $each){
        $selects[] = "keywords LIKE '%$each%' ";

}
$query .= implode(" OR ",$selects);
我认为这也是警告mysql_num_行的原因

error 1: for循环的使用:

foreach ($terms as $each)
{
    //....
}

警告:您正在将数据从URI直接输出到页面中,因此易受您正在使用且应该使用的URI的攻击。您也很容易受到现代API的影响,因为它会使您更容易使用。
foreach ($terms as $each)
{
    //....
}
for($i = 0; i < count($terms); i++)
{
    $each = $terms[i];
    //....
}
$num_rows = 0;
if($query){
    $num_rows = mysql_num_rows($query);
}