Приветствую, добавил к себе в скрипт простенькую функцию чтобы php код в текстовом поле не выполнялся и заменялся на другие символы. После добавления текста с какими либо кавычками видно, что текст обрабатывается,но в саму базу вносится текст который я набрал.Помогите сделать так чтобы в базу данных вносился обработанный код
Проверку всегда делаю на такой строке: <meta http-equiv='refresh' content='3;url=index.php'>
При заходе в админку (выводятся все записи) и этот код выполняется.Тоесть обновляет страницу.
PHP:
скопировать код в буфер обмена
function inputclean($input, $sql=true, $tag = true, $strip = true) { if ($tag) { $input = htmlentities($input, ENT_QUOTES, 'UTF-8'); //html_entity_decode()делает все обратно } // мнемонизировали строку. if(get_magic_quotes_gpc ()) { $input = stripslashes ($input); // убрали лишнее теперь экранирование. } if ($sql) { $input = mysql_real_escape_string ($input); // если нужен MySQL-запрос, } if ($strip) { $input = strip_tags($input); // если надо, то режем теги } //режем теги. $input=str_replace ("\n"," ", $input); $input=str_replace ("\r","", $input); $input = str_replace('\"', """, $input); $input = str_replace("\'", "'", $input); $input = str_replace('<', "<", $input); $input = str_replace('>', ">", $input); //обрабатываем переводы строки. return $input; } $input = inputclean($_POST['text']);# Присваеваем функцию полю #echo $input ; <p> <label>Текст<textarea name="antext" value="<?=$input;?>" cols="80" rows="20"></textarea> </label> </p>
(Отредактировано автором: 04 Сентября, 2011 - 00:09:07)
|