我正在搜索頁面上,其中一個結果信息的位是位置。要搜索的內容之一是音樂專輯(沒有位置信息)。PHP如果語句被覆蓋
http://www.flcbranson.org/freedownloads-search.php
如果你搜索「石頭」,你會看到神的和平 - 鉑。 3 - 我的岩石與位置信息(這不是它應該的方式)。如果你搜索「我的搖滾」,你會注意到沒有爲同一個記錄列出位置信息(它應該是這樣)。這就像if語句被覆蓋,如果另一個結果確實有位置信息。
音樂專輯有Music01,Music02等的$row["Number"]
...所有其他記錄應該爲空或一個數字(應該都小於Musicxx)據我所知,此代碼應該只顯示位置如果它不是一個音樂專輯的信息。
<?php
foreach ($stmt as $row) {
if ($row["Number"] < "Music01") {
if ($row["Location"]) $location = $row["Location"];
else $location = "Faith Life Church";
if ($row["City"]) $city = $row["City"];
else if ($row["Sarasota"]) $city = "Sarasota";
else $city = "Branson";
if ($row["State"]) $state = $row["State"];
else if ($row["Sarasota"]) $state = "FL";
else $state = "MO";
}
if ($location) {
?>
<li><?php echo $location; ?></li>
<?php
}
}
?>
我失去的東西,在這裏嗎?
JJ
不要忽略條件中的「{花括號}」,這使得它們很難閱讀,很可能成爲您問題的根源。 – Dunhamzzz
你似乎很奇怪,你試圖比較字符串,就像數字一樣。你如何期待它確定一個字符串「Music02」是否小於一個字符串「Music01」?你應該考慮比較實際的整數/數字等。 – thescientist
使用其他比較。 'stripos'可能是一個合適的函數,用於檢查'$ row ['Number']中'Music'的出現' – Jrod