我爲我的網站建立了一個廣告系統,首先嚐試根據位置和類別找到特定的廣告。失敗意味着它選擇只基於位置,失敗意味着它選擇了一個通用的廣告:建立一個if語句到mysqli搜索
$sql = "SELECT * FROM ads WHERE city='$city' AND category='$category' LIMIT 1";
$user_query = mysqli_query($db_conx, $sql);
if(mysqli_num_rows($user_query)==0){
$sql = "SELECT * FROM ads WHERE city='$city' AND category='All' LIMIT 1";
$user_query = mysqli_query($db_conx, $sql);
if(mysqli_num_rows($user_query)==0){ // 'City' is the generic all locations
$sql = "SELECT * FROM ads WHERE city='City' AND category='All' LIMIT 1";
$user_query = mysqli_query($db_conx, $sql);
}
}
我想這可能可以寫一個mysqli的語句來完成所有3級的操作,但似乎沒有什麼正常工作。 (我嘗試使用各種版本的聯盟和限制1)。 是否有可能做這樣的事情,還是最好保持原樣?
您可能會更好地創建一個SQL存儲過程來計算邏輯,而不是在應用程序和數據庫之間來回切換。 – Reisclef