У меня есть некоторые проблемы с проверкой того, существует ли FB User_id в моем db (если он не должен принимать пользователя как новый, а просто загружать приложение canvas). Я запустил его на своем сервере хостинга, и проблем не было, но на моем localhost он вызывает следующую ошибку:
mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in
Вот мой код:
<? $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 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, User won't be able to load app on failure inserting to database if (!($checken2)) { echo "Excuse us " . $first_name . ". Something went terribly wrong! Please try again later!"; exit; } } else { include ('sorrylocale.html'); exit; }
Я читал, что это связано с тем, что мой запрос ошибочен, но он работал на моем хостинг-провайдере, так что этого не может быть!
Этот запрос терпит неудачу и возвращает false
.
поместите это после mysqli_query()
чтобы узнать, что происходит.
if (!$check1_res) { printf("Error: %s\n", mysqli_error($con)); exit(); }
Чтобы получить больше информации: