За последние 24 часа нас посетили 18779 программистов и 1593 робота. Сейчас ищут 1134 программиста ...

Не работает скрипт

Тема в разделе "Установка PHP", создана пользователем racinggrup, 7 май 2015.

  1. racinggrup

    racinggrup Новичок

    С нами с:
    5 мар 2014
    Сообщения:
    12
    Симпатии:
    0
    Есть скрипт устонвил на сервере но пишет
    Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead. in /home/admin/web/default.domain/public_html/includes/class/_class_mysql.php on line 116
    у меня на сервере PHP Version 5.4.39-0+deb7u2
    вот строка которая выдает ошибку
    Код (PHP):
    1. {
    2. if ($this->db_id) return mysql_real_escape_string ($source, $this->db_id);
    3. else return mysql_escape_string($source);
    4. }
    * код пиши внутри тегов:
    Код ( (Unknown Language)):
    1. [b]][[/b][b]/code][/b][/color]
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Deprecated означает, что функции mysql_* устарели и их скоро удалят и на новой версии PHP код придётся переписывать.
    Если зайти в документацию https://php.net/manual/ru/function.mysql-escape-string.php то там тоже будет предупреждение, и совет перейти на https://php.net/manual/ru/book.mysqli.php и https://php.net/manual/ru/ref.pdo-mysql.php

    Чтобы убрать это сообщение, достаточно отключить его, это можно сделать несколькими способами:
    1. Использовать функцию error_reporting https://php.net/manual/ru/function.error-reporting.php
    вызвать её в самом начале файла вот так error_reporting(E_ALL & ~E_DEPRECATED); что будет значить отображать все ошибки кроме DEPRECATED
    Все предопределенные константы ошибок https://php.net/manual/ru/errorfunc.constants.php

    2. Отключить в php.ini
    3. Отключить через .htaccess
     
  3. racinggrup

    racinggrup Новичок

    С нами с:
    5 мар 2014
    Сообщения:
    12
    Симпатии:
    0
    я отключил через error_reporting(E_ALL & ~E_DEPRECATED); но выходят ошибки в других файлов

    Добавлено спустя 1 минуту 35 секунд:
    error_reporting(E_ALL ^ (E_NOTICE | E_WARNING | E_DEPRECATED)); это помогло
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Тогда второй вариант, отключить в php.ini
    В этом файле найди
    error_reporting =
    и сделай так
    error_reporting = E_ALL & ~E_DEPRECATED

    перезагрузи php или apache если используешь php_mod