嘿,我有一組結果從數據庫返回,他們是代表1 - 18這是drivers_id的數字,它可以返回任何數量的那些取決於多少司機從種族退休。然後,我將它們匹配到用戶驅動程序,如果它們匹配,則用戶點數爲-10點。PHP循環系統的幫助
如果它們不匹配,則返回+5點。如果查詢根本沒有返回任何設置,那麼我知道用戶四個驅動程序每個都可以是+5點,但是如果它返回5個行,那我該如何循環並匹配它們呢?如果沒有匹配,則將+5點添加到該驅動程序變量,但必須在比較所有結果集之後進行比較,因爲該驅動程序可能與$ row中的下一行匹配。非常感謝您提供的任何幫助!
P.S在結果集中的每一driver_id是唯一的,所以一旦一個比較 是真的那麼driver_id不會再次出現。
$results = mysql_query("SELECT drivers_id FROM results_retired WHERE drivers_id IN ('$driver1', '$driver2', '$driver3', '$driver4') AND track_id = '$track'") or die ("Failed to update" . mysql_error());
$retireddrivers = mysql_fetch_array($results)
if(in_array($driver1, $retireddrivers)){
$driveronepoints -= $driver_points_system["retired"];
}
else {
$driveronepoints += $driver_points_system["completion"];
}
if(in_array($driver2, $retireddrivers)) {
$drivertwopoints -= $driver_points_system["retired"];
}
else {
$drivertwopoints += $driver_points_system["completion"];
}
if(in_array($driver3, $retireddrivers)) {
$driverthreepoints -= $driver_points_system["retired"];
}
else {
$driverthreepoints += $driver_points_system["completion"];
}
if(in_array($driver4, $retireddrivers)) {
$driverfourpoints -= $driver_points_system["retired"];
}
else {
$driverfourpoints += $driver_points_system["completion"];
}
我已經做了一些改動,現在的代碼,是in_array功能確定在這種情況下使用?
感謝
你可以在數組函數中使用類似上面的變量名來比較數組的內容。 – Lee
你能告訴我們$ driver1,$ driver2等等來自哪裏嗎? –
有什麼問題? –