Опять кавычки... value="<? echo $bla ?>"

Eugeniy

Новичок
Опять кавычки... value="<? echo $bla ?>"

Есть форма.
Когда обрабатывается, проверяется на ошибки, если есть ошибки, то форма опять выводится с указанием ошибок и в форму выводятся уже введенные данные, таким макаром:
PHP:
<input type="text" name="name" value="<? echo (stripslashes($name)); ?>">
Проблема: если в имени встречаются кавычки, то имя выводится только до первой кавычки...
Если использовать апострофы вместо кавычек, то имя будет выводится до апострфа(при условии что он присутствует в имени)...
Если ваобще не писать кавычки, то имя будет выводится до первого слова...
Что делать?
 

Fish

Guest
Все правильно тебе выводит:

допустим $name без " - тогда:

<input type="text" name="name" value="Ddsfdsf выафвыа">

если с кавычками - полюбому получаем:

<input type="text" name="name" value="Ddsfdsf "вфыа выфа" выафвыа">

естественно первая кавычка введенная тобой закроет кавычку value="

это html..
 

Eugeniy

Новичок
Автор оригинала: Fish
Все правильно тебе выводит:
допустим $name без " - тогда:
<input type="text" name="name" value="Ddsfdsf выафвыа">
если с кавычками - полюбому получаем:
<input type="text" name="name" value="Ddsfdsf "вфыа выфа" выафвыа">
естественно первая кавычка введенная тобой закроет кавычку value="
это html..
Я понимаю почему так происходит.
Как это можно обойти вот в чем вопрос?
 

Demiurg

Guest
<input type="text" name="name" value="<? echo htmlspecialchars($name); ?>">
 

avdoshyn

Guest
Re: Опять кавычки... value="<? echo $bla ?>"

Попробуй это

function replace_q($var) {
$var = str_replace('"','&quot;',$var); return $var;
}




Автор оригинала: Eugeniy
Есть форма.
Когда обрабатывается, проверяется на ошибки, если есть ошибки, то форма опять выводится с указанием ошибок и в форму выводятся уже введенные данные, таким макаром:
PHP:
<input type="text" name="name" value="<? echo (stripslashes($name)); ?>">
Проблема: если в имени встречаются кавычки, то имя выводится только до первой кавычки...
Если использовать апострофы вместо кавычек, то имя будет выводится до апострфа(при условии что он присутствует в имени)...
Если ваобще не писать кавычки, то имя будет выводится до первого слова...
Что делать?
 

Demiurg

Guest
это же самое, только еще больше, делает htmlspecialchars()
 
Сверху