Me enfrento al error de tipo mysqli_query() argumento#1

programación


Me enfrento al siguiente problema.

Cita:

Error grave: TypeError no detectado: mysqli_query(): El argumento n.º 1 ($mysql) debe ser de tipo mysqli, bool dado en C:\location:18 Seguimiento de pila: #0 C:\location(18): mysqli_query(true, ‘ select*from `us…’) #1 {main} lanzado en C:\ubicación en la línea 18

Por favor, solucionalo.
A continuación se muestra el código.

PHP
<?php

$dbhost="localhost"; 

$dbuser = "root"; 

$dbpass = "password"; 



$mysql =  mysqli_connect($dbhost, $dbuser, $dbpass, 'userlogin');

if($mysql = true){
 echo "Connection Succesful!";
} else{
    die(mysqli_error);
}
if(mysqli_query($mysql, 'select*from `user info`')){
echo "<br> ERROR SOLVED FOREVER!";
}else{
echo "<h1><br><br> THIS IS AN ERROR!".mysqli_error'</h1>'
}
?>

NOTA: El problema solo está en la línea 18. Funcionó correctamente para la prueba de conexión.
Gracias.

Lo que he probado:

Reemplazar $mysql con mysqli_connect($dbhost, $dbuser, $dbpass, ‘userlogin’); en lugar de eso, en la línea 18 dentro de la función mysqli_query(). . Funcionó.

Solución 1

En caso de duda, lea el manual: PHP: mysqli_connect – Manual[^] Dice:

Cita:

Si el modo de excepción mysqli no está habilitado y falla la conexión, entonces mysqli_connect() devuelve false en lugar de un objeto.

Eso no es lo mismo que “si tiene éxito, vuelve”. true“.
Si tiene éxito, devuelve un objeto de conexión que puede utilizar, no un valor booleano.

Cambie su prueba para verificar false en lugar de true

Solución 2

si(isset($_SESSION[‘check_login’]))
{
encabezado(‘ubicación:tablero.php’);

}

コメント

タイトルとURLをコピーしました