2014-01-17 4 views
0
<?php 
if(isset($_REQUEST['submit'])) 
{ 
    $pass = $_POST['uname']; 
    if($pass=="") 
    { 
    $status="must be field out"; 
exit(); 
    } 
    else if(strlen($pass<=4)) 
    { 
    $status="password must be 8 charters"; 
    exit(); 
    } 
    else 
    { 
    $status="ok"; 
    exit; 
    } 
} 
?> 
    <body> 
    <p><?php echo $status; ?></p> 
    <form method="post" action="index.php"> 
     <span>username:</span><input type="text" name="uname" id="uname" /> 
     <input type="submit" name="submit" value="checkme"/> 
    </form> 
    </body> 
</html> 

без нажмите любую кнопку эхо уведомления показать на странице, если все условие истинно stattus="ok"; не работает любой учебник для начинающих, пожалуйста, помогите мнепроверки PHP не работает, используя от проверки

+0

научиться понимать, что EXIT() делает => http://de2.php.net/manual/en/function.exit.php – donald123

ответ

0

С exit() вы отменить выполнение ваш PHP-файл, поэтому все после вызова exit() не будет отображаться.

Если вы считаете, что другие части вашего утверждения if достигнуты ... нет. Следующая часть (else part) оператора if get будет достигнута только в том случае, если условие (в if (condition)) является false.

Удалить звонки exit(), и он должен работать.

0

Удалить все команды exit(). Они вызывают сценарий, чтобы остановить, прежде чем он попадает в эхо сообщения

0

Когда вы

echo $status; 

При загрузке страницы в какой момент $ _REQUEST или $ _POST не установлены, $ статус не определен и никогда не устанавливается. Таким образом, вы увидите ошибку, говорящую, что это неопределенная переменная.

Чтобы это исправить, вы можете

  1. добавить в начало сценария

    $status = ""; 
    
  2. Или во время печати $ статуса выполните следующие действия

    echo isset($status) ? $status : ""; 
    
0

Попробуйте этот код

<?php 
if($_POST){ 
    $pass=$_POST['uname']; 
    if(trim($_POST['uname']) == ''){ 
     $err['uname'] = 'must be field out'; 
    } 
    else if(strlen($pass)<=4) 
    { 
     $err['uname'] = 'password must be 8 charters'; 
    } 
    else{ 
     $err['uname']="ok"; 
    } 
} 

?> 

<body> 

     <form method="post" action=""> 
      <span>username:</span><input type="text" name="uname" id="uname" /> 
      <?php if($err['uname'] != '') { ?> 
        <p style="color: red;" class="error"> 
         <?php echo $err['uname'];?> 
        </p> 
        <?php } ?> 
     <input type="submit" name="submit" value="checkme"/> 
      </form> 
     </body> 
+0

@ user3164111 попробуйте этот код и сообщите мне об этом, это поможет вам. –

-1

метод = "POST" POST в столицах

, если он работает, дайте мне знать! Спасибо

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