php - parameter - mysqli_fetch_array() espera que el parámetro 1 sea mysqli_result, boolean dado en
warning mysqli_fetch_row() expects parameter 1 to be mysqli_result boolean given in (1)
Esta pregunta ya tiene una respuesta aquí:
Tengo problemas para verificar si ya existe un User_id de Facebook en mi base de datos (si no lo hace, debe aceptar al usuario como nuevo y, de lo contrario, simplemente cargar la aplicación de lienzo). Lo ejecuté en mi servidor de alojamiento y no hubo ningún problema, pero en mi servidor local me da el siguiente error:
mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in
Aquí está mi código:
<?
$fb_id = $user_profile[''id''];
$locale = $user_profile[''locale''];
if ($locale == "nl_NL") {
// Checking User Data @ WT-Database
$check1_task = "SELECT * FROM `users` WHERE `fb_id` = " . $fb_id . " LIMIT 0, 30 ";
$check1_res = mysqli_query($con, $check1_task);
$checken2 = mysqli_fetch_array($check1_res);
print $checken2;
// If the user does not exist @ WT-Database -> insert
if (!($checken2)) {
$add = "INSERT INTO users (fb_id, full_name, first_name, last_name, email) VALUES (''$fb_id'', ''$full_name'', ''$first_name'', ''$last_name'', ''$email'')";
mysqli_query($con, $add);
}
// Double-check, the user won''t be able to load the app on failure inserting to the database
if (!($checken2)) {
echo "Excuse us " . $first_name . ". Something went terribly wrong! Please try again later!";
exit;
}
} else {
include (''sorrylocale.html'');
exit;
}
He leído que tiene algo que ver con que mi consulta sea incorrecta, pero ha funcionado en mi proveedor de hosting, ¡así que no puede ser!
Esa consulta está fallando y devuelve false
.
Pon esto después de mysqli_query()
para ver qué está pasando.
if (!$check1_res) {
printf("Error: %s/n", mysqli_error($con));
exit();
}
Para más información: