您好我有一个长页面的代码,其中有多个if else状态,我想做的是检查一个数据库,看看该IP地址是否已经在表中
目前我正在这样做
$result = mysql_query("SELECT * FROM masterip_details WHERE ip_address='$ip_address' AND client_id='$client_id'") or die(mysql_error());
$num_rows = mysql_num_rows($result);
//IF THE RESULT IS MORE THAN 0, THIS MEANS THAT THEY ARE A RETURNING VISITOR
if( $num_rows > 0 ) {
/// Add returning Script here
} else {
//Add code
}
有没有办法可以用if else语句执行此操作?例如,如果记录在数据库中,则返回值为1。
谢谢,任何建议都将不胜感激。
答案 0 :(得分:1)
您可以使用count
获取具有该值的行数。
$result = mysql_query("SELECT count(*) FROM masterip_details WHERE ip_address='$ip_address' AND client_id='$client_id'") or die(mysql_error());
return $result > 0; //returns a boolean
这样,如果数据库中不存在该值,则会得到0
,如果值不存在,则会得到大于0的数字。
答案 1 :(得分:0)
在MySQL上使用 SELECT IF EXISTS
。
SELECT IF( EXISTS(
SELECT *
FROM masterip_details
WHERE `ip_address`=? AND `client_id`=?), 1, 0)