WedX - журнал о программировании и компьютерных науках

Как решить эту ошибку? Устарело: mysql_escape_string(): эта функция устарела; вместо этого используйте mysql_real_escape_string()

Я застрял на следующем:

Устарело: mysql_escape_string(): эта функция устарела; вместо этого используйте mysql_real_escape_string(). в /home/xtremeso/public_html/mp3/includes/class/_class_mysql.php в строке 116

        function safesql( $source )
        {
            if ($this->db_id) return mysqli_real_escape_string ($this->db_id, $source);
            else return mysql_escape_string($source);
        }

Я уже пытался использовать mysql_escape_real_string, но это не решает проблему. И игнорирование сообщений об ошибках php через файл .htacces также не работает.

18.05.2014

  • Вы исправили это и в другом? 18.05.2014
  • Я думаю, это для переключения тогда. Убедитесь, что все экземпляры mysql_ во всем вашем коде, включая соединение с БД, были изменены на mysqli_ 18.05.2014

Ответы:


1

сообщение об ошибке ясно сказало это.

изменить это

 else return mysql_escape_string($source); // you are using mysql here

to

 else return mysqli_real_escape_string($source); //will be mysqli

OBS: вам следует переключиться на PDO или MYSQLI, так как MYSQL mysql_real_escape_string также будет объявлен устаревшим :)

вы смешиваете между mysqli и mysql.

РЕДАКТИРОВАТЬ: из вашей второй ошибки.

  mysqli_real_escape_string ($link ,$source )  // $link is your connection variable

ref

18.05.2014
  • Действительно, я снова получаю сообщение об ошибке при изменении. теперь я получил эту ошибку: Предупреждение: mysqli_real_escape_string() ожидает ровно 2 параметра, 1 указан в: и т. д. в строке 116. Как мне переключиться на PDO? 18.05.2014
  • проверьте мой отредактированный ответ. 18.05.2014
  • OP должен отображать полный код, включая соединение с БД. Вы будете редактировать это, если ваши пальцы не свело судорогой. Ответ находится в my comment 18.05.2014
  • хахаха, ты прав :), я собирался удалить свой ответ, так как меня высосали :) 18.05.2014
  • Вы уже знаете меня. Я никогда не отвечаю, когда не вижу всей картины ;-) 18.05.2014
  • @ Fred-ii- да лучше не редактировать 1000 правок :). 18.05.2014
  • В яблочко. 1, 2, 3 правки максимум. Все, что сверх этого, я обычно заканчиваю тем, что удаляю. 18.05.2014
  • Я просто посмотрю, что он скажет после этого последнего редактирования из-за его ошибки. 18.05.2014
  • Когда я перешел на ваш отредактированный пост: теперь я получил эту ошибку: Предупреждение: mysqli_real_escape_string() ожидает ровно 1 параметр, который будет mysqli null, указанным в: и т. д. в строке 116 18.05.2014
  • ну, я только что использовал это сейчас.. ‹?php // Отключить все отчеты об ошибках error_reporting(0); ?› 18.05.2014

  • 2

    вам нужно подключить mysql к базе данных, прежде чем использовать mysql_real_escape_string, эта функция не работает без подключения mysql к базе данных.

    18.05.2014
  • Нет, это mysqli_, а не mysql. 18.05.2014
  • Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]