2015-10-22 5 views
0

Пожалуйста, прочитайте приведенный ниже кодНе отображается сообщение об ошибке

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>PHP CORRECT CODE</title> 
<style type="text/css"> 
.error{ 
    position:absolute; 
    color:#FF0000; 

} 
</style> 
<?php 
$nameErr = $emailErr = $mobileErr = $cityErr = ""; 
$name = $email = $mobile = $city = ""; 

if(isset($_GET['submit'])) 
{ 
    if($_SERVER["REQUEST_METHOD"] == "GET") 
    { 
     //check name 
     if(empty($_REQUEST['name'])) 
     { 
      $nameErr = "Name can not be empty"; 
     } 
     else 
     { 
      $name = $_REQUEST['name']; 
     } 
     //check email 
     if(empty($_REQUEST['email'])) 
     { 
      $emailErr = "Emails can not be empty"; 
     } 
     else 
     { 
      $email = $_REQUEST['email']; 
     } 
     //check mobile 
     if(empty($_REQUEST['mobile'])) 
     { 
      $mobileErr = "Mobile number can not be empty"; 
     } 
     else 
     { 
      $mobile = $_REQUEST['mobile']; 
     } 
     //check city 
     if(empty($_REQUEST['city']) or $_REQUEST['city']=="") 
     { 
      $cityErr = "Please select your city"; 
     } 
     else 
     { 
      $city = $_REQUEST['city']; 
     } 
} 
else 
{ 
    echo "<script>alert('Aplogies we can not proceed this time. Thier is some issues in the form submission. Please refresh the page or try after some time.')</script>"; 
} 
} 
?> 

</head> 

<body bgcolor="#CCCCCC"> 
<center> 
    <h1>CORRECT FORM INSERTION WITH VALIDATION</h1> 
    <form name="correct-form" method="GET" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" > 
     NAME : <input type="text" name="name" id="name" value="<?php echo htmlspecialchars($name); ?>" /><span class="error"><?php echo $nameErr; ?></span> 
     <br/><br/> 
     EMAIL : <input type="email" name="email" id="email" value="<?php echo htmlspecialchars($email); ?>" /><span class="error"><?php echo $emailErr; ?></span> 
     <br/><br/> 
     MOBILE : <input type="text" name="mobile" id="mobile" value="<?php echo htmlspecialchars($mobile); ?>" /><span class="error"><?php echo $mobileErr; ?></span> 
     <br/><br/> 
     CITY : <select name="city" id="city" required="required"><span class="error"><?php echo htmlspecialchars($cityErr); ?></span> 
        <option selected="selected" value=""> --Select-- </option> 
        <option value="Jodhpur">JODHPUR</option> 
        <option value="Pali">PALI</option> 
        <option value="Jaipur">JAIPUR</option> 
        <option value="Udaipur">UDAIPUR</option>  
       </select> 
     <br/><br/> 
     <input type="submit" name="submit" id="submit" value="SUBMIT" />&nbsp;&nbsp;<input type="reset" name="reset" id="reset" value="RESET" /> 
    </form> 
</center> 
</body> 
</html> 

Я сделал полное кодирование для обязательных полей проверки, но поле последний город делает проблему для меня это не выдавалось сообщение об ошибке против этого, как в отображаются другие поля.

Заранее спасибо

+0

Вы пропустили это: если (пусто ($ _ REQUEST [ 'город']) или пустой ($ _ REQUEST [ 'город'] == "")). После этого изменения он работает, как и ожидалось. –

+0

@ the-run Почему вы должны использовать 'empty()', чтобы определить, истинно ли значение ** boolean **? –

+1

Я думаю, вы просто застрелились в ноге ... ошибка не может отображаться, потому что вы задаете поле, которое требуется, поэтому пользователь не может отправить форму без пустого, браузер также запросит, чтобы это поле было заполненной до того, как форма может быть отправлена ​​ – danidee

ответ

0

Я получил ответ своим умом, я просто показывал сообщение об ошибке до полного окончания тега. Теперь правильный код.

CITY : <select name="city" id="city" required="required"> 
        <option selected="selected" value="">--Select--</option> 
        <option value="Jodhpur">JODHPUR</option> 
        <option value="Pali">PALI</option> 
        <option value="Jaipur">JAIPUR</option> 
        <option value="Udaipur">UDAIPUR</option>  
       </select><span class="error"><?php echo htmlspecialchars($cityErr); ?></span> 
0

Погрешность является есть:

CITY : <select name="city" id="city" required="required"><span class="error">Please select your city</span> 
    <option selected="selected" value=""> --Select-- </option> 
    <option value="Jodhpur">JODHPUR</option> 
    <option value="Pali">PALI</option> 
    <option value="Jaipur">JAIPUR</option> 
    <option value="Udaipur">UDAIPUR</option>  
    </select> 

Но браузер не сделает его. Вы не можете вставлять произвольное содержимое внутри элемента управления <select>.

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