The function performs well the registration but does not respect the if and shows:
Warning: mysqli_num_rows () expects parameter 1 to be mysqli_result, boolean given in C: \ xampp \ htdocs \ projectphp \ model \ teacher.php on line 30
public function nueva($clave,$nombre,$a_paterno,$a_materno,$correo,$hash)
{
//error clave repetida=1, correo repetido=2,
require '../model/conexion.php';
$error=0;
$consulta_clave=$conn->prepare("select clave from colegio.profesores where clave=?;");
$consulta_clave->bind_param("s",$clave);
$cr=$consulta_clave->execute();
$consulta_clave->close();
echo "cr {$cr}";
$consulta_correo=$conn->prepare("select clave from colegio.profesores where correo=?;");
$consulta_correo->bind_param("s",$correo);
$mr=$consulta_correo->execute();
$consulta_correo->close();
$inserta=$conn->prepare("insert into colegio.profesores
(clave,nombre,a_paterno,a_materno,correo,contrasena)
values (?, ?, ?, ?, ?, ?);");
$inserta->bind_param('ssssss', $clave,$nombre,$a_paterno, $a_materno, $correo,$hash);
//$cr=mysqli_query($conn,"select clave from colegio.profesores where clave='{$clave}';");
//$mr=mysqli_query($conn,"select clave from colegio.profesores where correo='{$correo}';");
$compara=mysqli_num_rows($cr);
if ($compara<1)
{
if (mysqli_num_rows($mr)==0)
{
$inserta->execute();
//mysqli_query($conn,"insert into colegio.profesores (clave,nombre,a_paterno,a_materno,correo,contrasena) values ('".$clave."','".$nombre."','".$a_paterno."','".$a_materno."','".$correo."','".$hash."');");
}
else{$error=2;}
$inserta->close();
}
else
{
$error=1;
}
mysqli_close($conn);
return $error;
}