Ремонт файла system/mod.php

Раздел для тех кто знает слово: декомпиляция, все тонкости, коды, баги, дополнения и т.д.
Ответить
Аватара пользователя
glGizma
Site Admin
Сообщения: 218
Зарегистрирован: Ср сен 27, 2017 2:20 pm

Ремонт файла system/mod.php

Сообщение glGizma » Ср май 01, 2024 4:57 am

Есть ошибка: [01-Apr-2020 10:10:10 Europe/Kiev] PHP Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead. in /system/mod.php
Ошибка возникает из-за использования устаревшей функции mysql_escape_string(). Вам следует заменить её на mysqli_real_escape_string() или другие современные методы безопасной обработки данных для MySQLi или PDO
Старый код:

Код: Выделить всё

if(isset($_GET['go']))
	$go = htmlspecialchars(strip_tags(stripslashes(trim(urldecode(mysql_escape_string($_GET['go']))))));
else
	$go = "main";

$mozg_module = $go;
check_xss();
Заменяем на >>> новый код:

Код: Выделить всё

function process_go($db_id) {
    if (isset($_GET['go'])) {
        $go = htmlspecialchars(strip_tags(stripslashes(trim(urldecode(mysqli_real_escape_string($db_id, $_GET['go']))))));
    } else {
        $go = "main";
    }
    return $go;
}

// Использование:
$db_id = // Получите идентификатор соединения с базой данных;
$go = process_go($db_id);

// Перенаправление только при наличии параметра go
if (!empty($_GET['go'])) {
    // Устанавливаем переменную $go равной значению параметра go
    $go = $_GET['go'];
}

Этот код заменяет mysql_escape_string() на mysqli_real_escape_string(), чтобы избежать предупреждения о депрекации.
Этот код не выполняет перенаправление, а просто устанавливает переменную $go равной значению параметра go, если он установлен. Таким образом, страница должна загружаться без автоматического перенаправления.
Ошибок больше нет!
Вложения
go.png
go.png (35.69 КБ) 61 просмотр

Ответить