Страница 1 из 1

mysql_real_escape_string(): Access denied for user

СообщениеДобавлено: 31 май 2015, 16:04
linuxoidoz
В С5.6 я использовал:

$this->host_ip = mysql_real_escape_string($this->host_ip);

а теперь в С5.7 мне выдаётся ошибка:

mysql_real_escape_string(): Access denied for user ''@'localhost' (using password: NO)

Кто-нибудь знает, это почему? Это что-то в С5.7 или РНР5.5? Или вообще в MySQL?

Спасибо

Re: mysql_real_escape_string(): Access denied for user

СообщениеДобавлено: 31 май 2015, 22:13
cmsservice
Используйте:
Код: Выделить всё
$db = Database::get();
$this->host_ip = $db->quote($this->host_ip);


для работы mysql_real_escape_string нужена коннекшн к БД

Re: mysql_real_escape_string(): Access denied for user

СообщениеДобавлено: 01 июн 2015, 13:09
linuxoidoz
зачем для mysql_real_escape_string ДБ коннекшн? это же РНР функция

Re: mysql_real_escape_string(): Access denied for user

СообщениеДобавлено: 01 июн 2015, 14:53
cmsservice
linuxoidoz писал(а):зачем для mysql_real_escape_string ДБ коннекшн? это же РНР функция

Функция экранирует специальные символы в unescaped_string, принимая во внимание кодировку соединения, таким образом, что результат можно безопасно использовать в SQL-запросе.