我正在尝试使用对象mysqli -> fetch_array()
方法从我的mysql数据库中检索数据。但我不能因为我有以下错误:
致命错误:在第51行的/usr/home/.../web/modelos/usuario-model.php中的非对象上调用成员函数fetch_array()
这是我的代码:
function datoscorrectos($nombre,$csenya)
{
$dtcorrectos = false;
//$cn = $this -> establecer_conexion();
$cn = new mysqli(SERVIDOR_BBDD,USUARIO_BBDD,CONTRASENA_BBDD,NOMBRE_BBDD);
$cp = "select nombre, contrasenya from usuarios where usuario = " . $nombre;
$cbd = $cn -> query($cp);
echo "nombre " . $nombre;
while($cbd->fetch_array(MYSQLI_ASSOC))
{
echo $fp["nombre"];
if($nombre === $fp["nombre"])
{
if($csenya === $fp["contrasenya"])
{
$dtcorrectos = true;
break;
}
}
}
return $dtcorrectos;
}
如何检索数据?
感谢。
答案 0 :(得分:2)
问题是自定义字符串必须包装在SQL查询中的单引号之间:
"select nombre, contrasenya from usuarios where usuario = '$nombre'";
^ ^
答案 1 :(得分:1)
确保您的SQL语句正确并从中删除空格
$cn -> query($cp);
- 虽然不是不正确,但它不是一个好的编程实践。
基本上你的$cbd
对象没有被创建。