Почему PHP пытается получить доступ к моей базе данных localhost? - PullRequest
0 голосов
/ 06 марта 2012

У меня странная ошибка в приложении Code Igniter. Когда я вызываю mysql_real_escape_string, Code Igniter или PHP выдает эту ошибку.

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  mysql_real_escape_string() [<a href='function.mysql-real-escape-string'>function.mysql-real-escape-string</a>]: Can't connect to local MySQL server through socket '/No-MySQL-hostname-was-specified' (2)</p>
<p>Filename: helpers/formval_helper.php</p>
<p>Line Number: 13</p>

Почему простой вызов mysql_real_escape_string вызывает доступ к моей базе данных localhost? Разве эта функция не форматирует строку? Кроме того, я даже не использую свою базу данных localhost.

Ответы [ 4 ]

3 голосов
/ 06 марта 2012

http://php.net/manual/en/function.mysql-real-escape-string.php

Требуется соединение MySQL перед использованием mysql_real_escape_string (), в противном случае генерируется ошибка уровня E_WARNING и возвращается FALSE.Если link_identifier не определен, используется последнее соединение MySQL.

1 голос
/ 06 марта 2012

Эта функция имеет второй параметр link_identifier.Вот что говорит документация:

Соединение MySQL.Если идентификатор ссылки не указан, предполагается последняя ссылка, открытая mysql_connect ().Если такая ссылка не найдена, она попытается создать такую, как если бы mysql_connect () была вызвана без аргументов.Если соединение не найдено или не установлено, генерируется ошибка уровня E_WARNING

1 голос
/ 06 марта 2012

Ошибка говорит само за себя.

Это говорит о том, что он не может подключиться к вашему серверу mysql, с какими учетными данными и именем сервера вы указали!

Прежде чем использовать эту функцию, вам необходимо сначала подключиться к вашей БД! Это имеет некоторую зависимость от сервера MySql!

1 голос
/ 06 марта 2012

Поведение mysql_real_escape_string частично зависит от определенных настроек сервера базы данных, включая набор символов. Если вы хотите что-то общее, используйте addslashes, но учтите, что это даст неверные результаты для некоторых неясных многобайтовых наборов символов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...