Po6oKon 177 Опубликовано 6 июня, 2015 (изменено) В общем такая задача, есть кусок кода, но в нем что-то не так, что вылазит ошибка: Fatal error: Call to a member function real_escape_string() on a non-object in /public_html/bd.php on line 5 В чем может быть проблема ? <?php $link = mysql_connect( 'host', 'db', 'pass', 'base'); if (!empty($_GET['mail'])){ if (!empty($_GET['pass'])){ $mail = $mysqli->real_escape_string($_GET['mail']); $pass = $mysqli->real_escape_string($_GET['pass']); $result = $mysqli->query("SELECT * FROM base WHERE mail='$mail' AND pass='$pass' ORDER BY id DESC LIMIT 1"); $row = mysqli_fetch_assoc($result); if (empty($row['id'])){ echo 'PRIVATE'; }else{ echo 'PUBLIC';}}} ?> Изменено 6 июня, 2015 пользователем Po6oKon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Desquire 451 Опубликовано 6 июня, 2015 (изменено) У тебя нету объекта в $mysqli Там должно хранится соединение с бд, но ты сделал через mysql_connect( 'host', 'db', 'pass', 'base'); и запрос у тебя тоже не будет работать. Подправил твой код: <?php $mysqli = new mysqli("127.0.0.1", "username", "password", "db"); if (!empty($_GET['mail'])){ if (!empty($_GET['pass'])){ $mail = $mysqli->real_escape_string($_GET['mail']); $pass = $mysqli->real_escape_string($_GET['pass']); $result = $mysqli->query("SELECT * FROM base WHERE mail='$mail' AND pass='$pass' ORDER BY id DESC LIMIT 1"); $row = $result->fetch_assoc(); if (empty($row['id'])){ echo 'PRIVATE'; }else{ echo 'PUBLIC';}}} ?> Изменено 6 июня, 2015 пользователем zGrandy 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Po6oKon 177 Опубликовано 6 июня, 2015 Запихнул твой код для проверки, та же самая выводится ошибка при обращении к GET запросу demo.ru/demo.php?mail=a@mail.ru&pass=a Только при обращении выводится ошибка, а файл bd.php - это обычный скриптяга для тестирования. Т.е. мне нужен объект в MySQLI? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Po6oKon 177 Опубликовано 6 июня, 2015 Задал еще объект класса: $mysqli = @new mysqli($host, $user, $pass, $db); Вылезли еще ошибочки Warning: mysqli::real_escape_string() [mysqli.real-escape-string]: Couldn't fetch mysqli in /home/a9234471/public_html/bd.php on line 6 Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in /home/a9234471/public_html/bd.php on line 8 Fatal error: Call to a member function fetch_assoc() on a non-object in /home/a9234471/public_html/bd.php on line 9 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Desquire 451 Опубликовано 6 июня, 2015 (изменено) Там опечатка, я поправил, у меня работает. Изменено 6 июня, 2015 пользователем zGrandy 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Po6oKon 177 Опубликовано 6 июня, 2015 Там опечатка, я поправил, у меня работает. Благодарю. Проблема решена, всё работает. Тему клоуз. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Po6oKon 177 Опубликовано 6 июня, 2015 Еще вопрос, как вывести всё содержимое базы? В формате Mail;Pass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Desquire 451 Опубликовано 6 июня, 2015 Есть же вроде уже сервис проверки мыла на приватность) А так, ка вариант читать файл, и потом запросом кидать) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Po6oKon 177 Опубликовано 6 июня, 2015 (изменено) Есть же вроде уже сервис проверки мыла на приватность) А так, ка вариант читать файл, и потом запросом кидать) Не встречал таких сервисов еще. Не ну это понятно, у меня веб часть - это северная сторона, нужен вывод с базы, а там с клиентской части будет идти чтение. Изменено 6 июня, 2015 пользователем Po6oKon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Desquire 451 Опубликовано 6 июня, 2015 Не встречал таких сервисов еще. Не ну это понятно, у меня веб часть - это северная сторона, нужен вывод с базы, а там с клиентской части будет идти чтение. http://fpteam-hack.com/showthread.php?t=13208 ( не реклама) И погугли. их там куча куча. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты