Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何处理空的sql响应?_Php_Mysql_Sql_Response - Fatal编程技术网

Php 如何处理空的sql响应?

Php 如何处理空的sql响应?,php,mysql,sql,response,Php,Mysql,Sql,Response,如果sql响应为空,如何向该代码添加句柄 <?php $userReferrals_query = sql_query("SELECT id as id2 FROM balances WHERE email = '$address'"); $id2 = fetch_assoc($userReferrals_query); $userReferrals_query2 = sql_query("SELECT COUNT(*) AS referrals FROM balances WHER

如果sql响应为空,如何向该代码添加句柄

<?php
$userReferrals_query = sql_query("SELECT id as id2 FROM balances WHERE email = '$address'");
$id2 = fetch_assoc($userReferrals_query); 


$userReferrals_query2 = sql_query("SELECT COUNT(*) AS referrals FROM balances WHERE referredby = '".$id2['id2']."'");
$referrals = fetch_assoc($userReferrals_query2); 
?>

您可以执行以下操作:

if(empty($id2)){
//Code to handle empty response
}
fetch_assoc()
如果结果中没有剩余行,则返回
false
。如果您只是获取一行,而没有匹配的行,则在第一次调用时返回
false
。因此,只需测试
$id2
是真是假:

if ($id2) {
    // do referrals query
}
或者,您可以简单地将这两个查询与
联接结合起来:

$userReferralsQuery = sql_query("SELECT COUNT(*) AS referrals 
                                 FROM balances AS b1
                                 JOIN balances AS b2 ON b1.referred_by = b2.id
                                 WHERE b2.email = '$address'";

是空的
不是一个通用的php函数。@CharlotteDunois谢谢。现在还早;)Updated.sql\u query是某种东西的包装器吗?谢谢,我想出来了!:)