PHP的数据库查询结果不像android里返回结果集的cursor可以直接查询,而是返回一个resource类型的数据。
要使用查询结果与用户输入比对时,我们首先应该对其进行一定的处理。
1、当结果只有一行时,可以直接调用fetch_assoc()。
比如:
$row = $result->fetch_assoc(); //$result 代表一个查询结果。
$uname = $row['username']; //username 是数据库表里的一个字段
有了$uname ,就可以进行想要的操作了。
2、当结果有多行时,我们需要把$result进行遍历,将要的数据存储到一个新的数组中。
还是使用fetch_assoc();函数。
<?php
$sqli = new mysqli("localhost","root","","test");
$sql = "select * from users where username='wolfee9639'";
$result = $sqli->query($sql);
$result_set = array();
var_dump($result);
while($row = $result->fetch_assoc()){
//array_push($result_set,$row['username']);
$result_set[] = $row['username']; //上面注释的语句和本行语句效果相同,不过PHP官方手册推荐用第二种
}
//var_dump($result_set);
if(in_array('wolfee9639',$result_set)){
echo "succeeded";
}else{
echo "failed";
}
?>