2013-04-08 1 views
0

Вот код,Не получать textarea'a значения по форме поста

<?php 
if (isset($_POST['flag'])) { 
    echo "in"; 
$val=htmlspecialchars($_POST['area']); 
echo $val; 
if($val == "") 
{ 
    $abstractErrorMsg="Please enter the abstract of your article"; 
    echo $abstractErrorMsg; 
} 
} 
?> 
<html> 
    <form method="post" action=""> 
     <input type="hidden" name="flag" value="hidden"> 
     Abstract* 
     <textarea name="area" style="width: 300px; height: 100px;"> 

     </textarea> 
     <input type="submit" name="btn"> 
    </form> 
</html> 

Когда я заполнив форму без заполнения текстового поля, то и он не отображает сообщение об ошибке.

Может ли кто-нибудь понять, что вызывает это странное поведение?

ответ

3

Чтобы проверить, если текстовое поле пустое или не использовать использовать это:

if (!strlen(trim($_POST['textarea']))) 
2

Значение по умолчанию для textarea состоит из нескольких пробелов и новых строк. Это не эквивалентно "".

0

Если вы изменили свое текстовое поле, чтобы:

<textarea name="area" style="width: 300px; height: 100px;"></textarea> 

Тогда было бы пустым. На данный момент в нем есть пробелы и новые строки.

Смежные вопросы