Estoy tratando de crear un registro cuando me conecto a mi base de datos, pero aparece este error:

Error fatal: Error no detectado: llamada a una función miembro fetch_assoc () en booleano

Aquí está el código:

<?php 

include 'database.php';
?>

<?php

// create a variable
$email=$_POST['email'];
$password=$_POST['password'];


//Execute the query

$sql = "SELECT * FROM user WHERE email='$email' AND password='$password'";
$result = mysqli_query($connect,$sql);

if(!$row = $result -> fetch_assoc($result)){
    echo "Your email or password is incorrect!";
    }
    else{
    echo "You are logged in!";
    }

¡Gracias!

-1
Jas Soloria 15 ago. 2016 a las 09:47

2 respuestas

La mejor respuesta

Si está implementando el código de inicio de sesión, pruebe esto en su lugar

$sql = "SELECT * FROM user WHERE email='$email' AND password='$password'";
$result = mysqli_query($connect,$sql);

if(mysqli_num_rows($result) == 1 ){
    echo "You are logged in!";
    }
    else{
    echo "Your email or password is incorrect!!";
    }
0
Vishnu Bhadoriya 15 ago. 2016 a las 06:57
if ($result = mysqli_query($link, $query)) {

    /* fetch associative array */
    while ($row = mysqli_fetch_assoc($result)) {

    }

    /* free result set */
    mysqli_free_result($result);
}

http://php.net/manual/en/mysqli-result.fetch-assoc.php

Ejemplo 2, donde se usa la función mysqli_query.

0
eeXBee 15 ago. 2016 a las 06:53