Intereting Posts

Нужно ли использовать следующую функцию для стирания строк в PHP?

function escape($value){ $magic_quotes_active = get_magic_quotes_gpc(); $new_enough_php = function_exists("mysql_real_escape_string"); if ($new_enough_php) { if ($magic_quotes_active) { $value = stripslashes($value); $value = mysql_real_escape_string($value); } elseif (!$magic_quotes_active) { $value = addslashes($value); } return $value; } } 

Долгое время я использовал функцию выше для escape-строки? Теперь, я хочу спросить, что мне нужно использовать эту функцию (я обнаружил, что через Интернет для экранирования строки, которая работает с большинством версий PHP)? ИЛИ Что делает вещи излишне сложными?

Нет, вы должны, по сути, избегать использования таких функций любой ценой! То, что вы должны изучать, – это использование подготовленных заявлений.
Проверьте страницы документа любой из функций mysql_* и обратите внимание на красную предупреждающую вещь: расширение начало процесс устаревания, вместо этого предлагается PDO или mysqli_* .

Чтобы избежать инъекций, подготовленные заявления – это то, что вы должны использовать … прочитайте пару статей по этому вопросу и mysqli_* преимущества как PDO и mysqli_* . Это, я боюсь, единственный путь вперед …

Вам не нужны такие функции. Обычно достаточно использовать addslashes(...) . В особых случаях см. Документацию, например, @Elias Van Ootegem.