以下是代码:
$hidden
然而,在执行时,它不会像预期的那样返回<?php
$conexion = mysqli_connect('localhost', 'root', '', 'ingeniera_de_software_db');
$user = $_POST['usuario'];
$pass = $_POST['contrasena'];
$check = "SELECT count(*) AS A FROM usuarios WHERE usuario = '" . $user . "' AND contraseña = md5('" . $pass . "');";
$resultado = mysqli_query($conexion, $check);
$r = mysqli_fetch_array($resultado);
echo $r['A'];
?>
,但会返回:
警告:mysqli_fetch_array()期望参数1为mysqli_result,
中给出的布尔值
我试图将查询直接放在sql编辑器中并且它有效,我已经使用了这种类型的查询而没有任何问题。
顺便说一下,我知道这不安全,但我无法通过这一点。
答案 0 :(得分:0)
尝试这段代码......
buildscript
{
dependencies
{
classpath 'com.google.gms:google-services:3.0.0'
}
}
由于您获得单个值,即结果计数,并且您正在使用mysql_fetch_array(),因此不需要指定&#34; AS A&#34;。
答案 1 :(得分:0)
尝试以下代码。另外,请确保在 mysqli_connect 中输入了正确的数据库详细信息。
<?php
$conexion = mysqli_connect('localhost', 'root', '', 'ingeniera_de_software_db');
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();die;
}
$user = $_POST['usuario'];
$pass = $_POST['contrasena'];
$check = "SELECT count(*) AS A FROM usuarios WHERE usuario = '" . $user . "' AND contraseña = md5('" . $pass . "');";
$resultado = mysqli_query($conexion, $check);
$r = mysqli_fetch_array($resultado,MYSQLI_ASSOC);
print_r($r);
?>
答案 2 :(得分:0)
$resltado
可能返回false
。因此,调试此方法的一个好方法是使用mysqli_error()
并查看是否从MySQL收到任何错误。还要检查是否定义了$_POST
。
$conexion = mysqli_connect('localhost', 'root', '', 'ingeniera_de_software_db');
if(isset($_POST['usuario'])){ // If POST ISSET
$user = $_POST['usuario'];
$pass = $_POST['contrasena'];
$check = "SELECT count(*) AS A FROM usuarios WHERE usuario = '" . $user . "' AND contraseña = md5('" . $pass . "');";
if($resultado = mysqli_query($conexion, $check)){ // IF QUERY IS TRUE
$r = mysqli_fetch_array($resultado);
echo $r['A'];
}else{ // ELSE ECHO ERROR
echo mysqli_error($con);
}
}else{echo "Post is not set";}
答案 3 :(得分:0)
试试这个
$r = mysql_fetch_assoc($resultado);
echo $r['A'];