所以,我下面的PHP查詢:MySQL查詢搜索以「如果」語句
for($i = 0; $i < sizeof($cat_result) ; ++$i) {
$query_p = "SELECT * FROM $table WHERE id = %d";
$results[] = $wpdb->get_row($wpdb->prepare($query_p, $cat_result[$i]));
}
搜索依賴於$cat_result
其中包含大量的數字。
例如,讓我們說$cat_result
包含以下號碼:「1,3,5,21,35`
使用這些5個號碼,查詢將查找數據庫信息。
但是,有些情況下db中不存在一些數字(例如「21」)。
然後,我得到PHP NOTICE: trying to get property of non-object
。
如何編寫「if」語句,以便如果id
(本例中爲「21」)不存在,那麼它只是忽略查詢? (很難解釋我的意思是「忽略」,我仍然希望查詢執行搜索,但是如果它沒有找到它正在查找的內容,那麼只需忽略該錯誤)。
爲什麼不直接說:'SELECT * FROM $ table WHERE id in($ cat_result);' – Fallenreaper
@Matt'IFNULL'沒有幫助,如果沒有行匹配。 – Barmar
@Barmar Ahh,那時可能是錯誤的。 – Matt