2013-11-21 34 views
0

我有执行查询,获取结果,然后对这些结果执行操作的代码。我想确保查询不会返回空,否则while条件将失败。检查数组是否为空,然后是条件

$ckey = $GLOBALS['ckey']; 
$query3 = "SELECT * FROM uc_users WHERE id = $ckey;"; 
$result3 = mysqli_query($dbc, $query3); 

if(!empty(mysqli_fetch_array($result3)) 
{ 
    while($row3 = mysqli_fetch_array($result3)) 
    { 
    $GLOBALS['cname'] = $row3['display_name']; 
    } 
} 
else{ echo "empty";} 

这将返回 “致命错误:在写上下文C不能使用函数返回值:”

$ckey = $GLOBALS['ckey']; 
$query3 = "SELECT * FROM uc_users WHERE id = $ckey;"; 
$result3 = mysqli_query($dbc, $query3); 

if(mysqli_num_rows(mysqli_fetch_array($result3))) 
{ 
    while($row3 = mysqli_fetch_array($result3)) 
    { 
    $GLOBALS['cname'] = $row3['display_name']; 
    }  
} 
else{ echo "empty";} 

返回“警告:mysqli_num_rows()预计参数1被mysqli_result,数组给定在C:”

+3

尝试'mysqli_num_rows($ result3)' –

+0

临屋它真的非常感谢你! – user2967081

回答

0

关于你的第二个代码试试这个:

if(mysqli_num_rows($result3))