嘿,我有一组结果从数据库返回,他们是代表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等等来自哪里吗? –
有什么问题? –