Это странная проблема, с которой я сталкиваюсь, моя локальная машина запускает php 5.6.3, в то время как на живом сервере работает php 5.4. Недавно мы обновили наше приложение с codeigniter 2. * до codeingiter 3.0, теперь, работая на живом сервере, мы узнали об этой новой проблеме (более старой и до сих пор не работающей). SMTP)
Обнаружена ошибка PHP
Серьезность: 8192
Сообщение: mysql_escape_string (): эта функция устарела; используйте вместо этого mysql_real_escape_string ().
Имя файла: mysql / mysql_driver.php
Номер строки: 319
Теперь после некоторого поиска в Google, я нашел это лучшее решение может быть для CI 2. * не работает как codeigniter’s mysql_drivers.php
файл уже используется mysql_real_escape_string()
, Один ответ предлагает мне проверить database.php
файл. Если мое соединение по умолчанию mysql
вместо mysqli
который mysqli
Теперь у меня нет возможности узнать, что идет не так или что я скучаю.
PHP mysql
драйвер устарел с 5.5.
Увидеть http://php.net/manual/en/intro.mysql.php
Так что лучше не используйте его. использование mysqli
,
Строка 319 на mysql/mysql_driver.php
:
https://github.com/bcit-ci/CodeIgniter/blob/3fe79499c5bedb5b3bc4281821776f031f73674e/system/database/drivers/mysql/mysql_driver.php#L319
Здесь нет mysql_escape_string()
, Кажется, вы не обновили до 3.0 правильно.
И проблема в том, ты противоречишь MySQL а также MySQLi
Для решения вашей проблемы используйте mysqli_real_escape_string()
Около mysql_escape_string()
Предупреждение:
Эта функция устарела в PHP 4.3.0 и будет удалена в будущем вместе со всем исходным расширением MySQL. Вместо этого следует использовать расширение MySQLi или PDO_MySQL. См. Также MySQL: выбор руководства по API и соответствующие часто задаваемые вопросы для получения дополнительной информации. Альтернативы этой функции включают в себя:
mysqli_escape_string()
PDO::quote()
Около mysql_real_escape_string()
Предупреждение:
Начиная с PHP 5.5.0, это расширение устарело и будет удалено в будущем. Вместо этого следует использовать расширение MySQLi или PDO_MySQL. См. Также MySQL: выбор руководства по API и соответствующие часто задаваемые вопросы для получения дополнительной информации. Альтернативы этой функции включают в себя:
mysqli_real_escape_string()
PDO::quote()