我需要一些幫助,在這裏我的代碼。到目前爲止,當我進入頁面時,可以看到整個視圖。當我設置搜索並POST時,它也可以工作。但是,當我添加 - > 2或更多< - 關鍵字時,我收到錯誤。所以問題在於forearch循環其他構造。PHP搜索引擎循環失敗
在這種情況下,我得到這個錯誤:
查詢FOUT您的SQL語法錯誤;檢查對應於您的MySQL服務器版本的手冊,以便在第6行的'ORDER BY custsurname,custforename,custmidname'附近使用正確的語法。
我嘗試了很多構建方法,但似乎不起作用。
我的代碼如下:
if(isset($_POST['search']))
{
$search = $_POST['search'];
$terms = explode(" ", $search);
$customerlistquery = "
SELECT *
FROM customer
LEFT JOIN company
ON customer.compid=company.compid
WHERE
";
foreach ($terms as $each)
{
$i++;
if ($i == 1)
{
$customerlistquery .= "concat(custsurname, custforename, custmidname) LIKE '%$each%' ORDER BY custsurname, custforename, custmidname";
}
else
{
$customerlistquery .= "OR concat(custsurname, custforename, custmidname) LIKE '%$each%' ORDER BY custsurname, custforename, custmidname";
}
}
}
else
{
$customerlistquery = "
SELECT *
FROM customer
LEFT JOIN company
ON customer.compid=company.compid
ORDER BY custsurname, custforename, custmidname
";
}
而就在最後一個多問題。爲什麼PHP抱怨未定變量:i?
Notice: Undefined variable: i in ...
這是每個「一次性變量」的標準消息嗎?
** $ i **第一次未定義,您需要初始化它,例如'$ i = 0' –