我的PHP版本是5.4.35,而PHP准备语句的某些方法则没有 工作。这些方法是:
$stmt = $stmt->get_result();
$num=$stmt->num_rows;
$row=$stmt->fetch_assoc();
对于第一种方法,我使用$stmt->store_result();
代替$stmt->get_result();
我不知道为什么。但它有效。
当我使用$stmt->store_result()
时
第二种方法$stmt->num_rows;
效果很好。但我做不到$stmt->fetch_assoc()
。有什么问题?
我的错误是
Fatal error</b>: Call to undefined method mysqli_stmt::fetch_assoc()
有什么问题?
我的实际代码:
public function Information($email,$pass)
{
#DB Query Comment
$stmt = $GLOBALS['conn']->prepare("SELECT * FROM name WHERE email=? AND password=?");
$stmt->bind_param("ss",$WHERE_email,$WHERE_pass);
#DB Query Value
$WHERE_email=$email;
$WHERE_pass=$pass;
#Run Query In DB
$result=$stmt->execute();
#Get Count Of Rows
#Refrsh $stmt
$stmt->store_result();
$num=$stmt->num_rows;
$row=$stmt->fetch_assoc();
if(@$num>0)
{
$response['status']=200;
$response['status_message']="User found";
$response['email']=$row['email'];
$response['fullname']=$row['fullname'];
$response['phonenumber']=$row['phonenumber'];
$json_response=json_encode($response);
echo $json_response;
return 0;
}
else
{
$response['status']=204;
$response['status_message']="User Not found";
$json_response=json_encode($response);
echo $json_response;
return 0;
}
}