我正在創建使用PHP的搜索選項。我想根據給定的字段給多個字段時,我需要做搜索我需要從數據庫中獲取記錄。要得到清晰的想法,我需要做的下面是搜索選項的界面Mysql搜索多個字段
,所以我已經看過很多選擇,我發現下面有效率
$query = 'SELECT *
FROM user
WHERE 1 = 1 ';
if(!empty($serviceNumber))
{
$query .= ' and serviceNumber = ? ';
$params[] = $serviceNumber;
}
if(!empty($name))
{
$query .= ' and userName = ? ';
$params[] = $name;
}
if(!empty($status))
{
$query .= ' and status = ? ';
$params[] =$status;
}
if(!empty($params))
{
$sth->execute($params);
$dbh->prepare($query);
$result= mysqli_query($dbcon,$sth);
if(!$result)
{
die('Could not get data: ' . mysqli_error());
}
}
else
{
echo 'Missing Values';
}
,但我得到$某事物未定義的變量,所以我有沒有有效的方法或我可以糾正這個錯誤。如果任何人都可以幫助表示讚賞。
根據代碼,你的代碼中沒有$ ssh變量,可以添加完整的代碼代碼在這裏,如果可能? –
這是完全錯誤的;你在混合使用mysqli和PDO語法,並且語句的順序沒有任何意義。所以,即使你使用'prepare'行正確地定義了'$ sth',它仍然不起作用。 – jeroen
@MaulikSavaliya你在說什麼?你在哪裏看到一個'$ ssh'變量? – Loko