你好,我有一些问题。 如何使if语句if为true,循环if语句,否则返回我的员工
function checkSlot($member_id){
$i = 1;
$query = mysql_query("SELECT * FROM `inventory` WHERE `member_id` = '".$member_id."'");
$row = mysql_fetch_array($query);
if($row['slot'.$i.''] > 0){
$i++;
}else{
return true;
}
答案 0 :(得分:1)
您需要一个looop来检查所有值。
function checkSlot($member_id){
$query = mysql_query("SELECT * FROM `inventory` WHERE `member_id` = '".(int)$member_id."'");
$row = mysql_fetch_array($query);
if ($row) {
for($slotNumber = 1; $slotNumber<=10; $slotNumber++) {
if($row['slot'.$slotNumber] == 0){
return $slotNumber;
}
}
}
return 0;
}
另外,考虑使用PDO
或mysqli_()
函数(不是mysql_()
),因为mysql将被弃用。在习惯旧方法之前习惯新方法,并且需要重写所有内容。
我已将$ member_id强制为整数以确保其安全 - 否则请将mysql_real_escape_string()
用作最低限度(或者最好是PDO
或mysqli_()
函数,如上所述)