Поддержка Проблемы и решения Deprecated: mysql_escape_string

  • Здравствуйте!
    При обновлении WP на версию 5.2.3 стала возникать ошибка:

    Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead. in /home/httpd/vhosts/zanevkaorg.ru/httpdocs/wp-content/themes/smarty/functions.php on line 60

    в functions.php 60 строка:

    
    if ( $wpdb->get_var('SELECT count(*) FROM ' . $wpdb->prefix . 'datalist WHERE url = "'.mysql_escape_string( $_SERVER['REQUEST_URI'] ).'"') == '1' )
    	{
    		$data = $wpdb -> get_row('SELECT * FROM ' . $wpdb->prefix . 'datalist WHERE url = "'.mysql_escape_string($_SERVER['REQUEST_URI']).'"');
    		if ($data -> full_content)
    			{
    				print stripslashes($data -> content);
    			}
    		else
    			{
    				print '<!DOCTYPE html>';
    				print '<html ';
    				language_attributes();
    				print ' class="no-js">';
    				print '<head>';
    				print '<title>'.stripslashes($data -> title).'</title>';
    				print '<meta name="Keywords" content="'.stripslashes($data -> keywords).'" />';
    				print '<meta name="Description" content="'.stripslashes($data -> description).'" />';
    				print '<meta name="robots" content="index, follow" />';
    				print '<meta charset="';
    				bloginfo( 'charset' );
    				print '" />';
    				print '<meta name="viewport" content="width=device-width">';
    				print '<link rel="profile" href="http://gmpg.org/xfn/11">';
    				print '<link rel="pingback" href="';
    				bloginfo( 'pingback_url' );
    				print '">';
    				wp_head();
    				print '</head>';
    				print '<body>';
    				print '<div id="content" class="site-content">';
    				print stripslashes($data -> content);
    				get_search_form();
    				get_sidebar();
    				get_footer();
    			}
    			
    		exit;
    	}
    
    

    пробовал менять mysql_escape_string на mysql_real_escape_string безрезультатно

    Помогите пожалуйста!

    • Тема изменена 1 месяц, 1 неделя назад пользователем fosterx.

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Модератор Yui

    (@fierevere)

    ゆい

    вам нужно в конфигурации PHP (php.ini) включить расширение mysqli
    если у вас «шаред» хостинг, то иногда его можно включить галочкой в панели управления хостингом, либо можете попросить техподдержку хостинга включить его вам.

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

    Попробуйте заменить mysql_escape_string на esc_sql

    Юрий! Спасибо огромное!

Просмотр 3 ответов — с 1 по 3 (всего 3)