2015-03-07 5 views
1

Я знаю, как проверить форму в JavaScript, но не на php. Вот мой код:Как проверить форму в php?

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Cafeteria Ordering System</title> 
<style type="text/css"> 
@import "cafeteriastyle.css"; 
</style> 
</head> 

<body> 
<?php 
if(isset($_POST['btnSubmit'])) 
{ 
    //2nd page 
} 
else 
{ 
?> 
<form name="form1" method="post"> 
<table width="500" border="0" align="center" class="TableBorder"> 
    <tbody> 
    <tr> 
     <td colspan="2" align="center" class="TableTitle TableHeadingFill">Cafeteria Ordering System</td> 
    </tr> 
    <tr> 
     <td width="250" align="right"><p>Customer ID</p></td> 
     <td><input type="text" name="txtID"></td> 
    </tr> 
    <tr> 
     <td align="right"><p>Num. Of Items Order</p></td> 
     <td><input type="text" name="txtItems"></td> 
    </tr> 
    <tr> 
     <td colspan="2" align="center"><input type="submit" name="btnSubmit"></td> 
    </tr> 
    </tbody> 
</table> 
</form> 
<?php 
} 
?> 
</body> 
</html> 

У меня есть форма вызова "Form1", внутри Form1, у меня есть 2 TextField.
Когда нажата кнопка «Отправить», я хочу выполнить проверку проверки формы, чтобы убедиться, что оба текстового поля заполнены, и перейдите на вторую страницу. Если текстовое поле пуст, отобразите предупреждающее сообщение и оставайтесь на той же странице.
Я знаю, как сделать это с JavaScript, например:

<script language="javascript" type="text/javascript"> 
    function formValidation() 
    { 
     if(form1.elements["Name"].value.trim() == "") 
     { 
      alert("Please enter the name"); 
      form1.elements["Name"].select(); 
      return false; 
     } 
     return true; 
    } 
</script> 

и просто нужно добавить onSubmit="return formValidation" в тег формы, как:
<form name="form1" method="post" onSubmit="return formValidation()"> тогда он будет работать, вероятно. Но как это сделать с php вместо JS?

ответ

2
<?php 
if(isset($_POST['btnSubmit'])) 
{ 
    $txnid=trim($_POST['txtID']); 
    $txtItems=trim($_POST['txtItems']); 
    if(!empty($txnid) && !empty($txtItems)) 
    { 
     //2nd page 
    } 
    else 
    { 
     echo 'Both Fields are Required.'; 
    } 

} 
else 
{ 
?> 
<form name="form1" method="post"> 
<table width="500" border="0" align="center" class="TableBorder"> 
    <tbody> 
    <tr> 
     <td colspan="2" align="center" class="TableTitle TableHeadingFill">Cafeteria Ordering System</td> 
    </tr> 
    <tr> 
     <td width="250" align="right"><p>Customer ID</p></td> 
     <td><input type="text" name="txtID"></td> 
    </tr> 
    <tr> 
     <td align="right"><p>Num. Of Items Order</p></td> 
     <td><input type="text" name="txtItems"></td> 
    </tr> 
    <tr> 
     <td colspan="2" align="center"><input type="submit" name="btnSubmit"></td> 
    </tr> 
    </tbody> 
+0

как оставить его на одной странице, если поле не является f недовольный? 'window.history.back()' и 'location =" index.php "' woking хорошо, но я хочу знать, есть ли способ лучше, чем эти? – Newbie

+0

он приходит o еще условие, то оно просто показывает сообщение, чтобы не перенаправлять на вторую страницу, он приходит туда, если он приходит, если условие в этом мы проверяем для i, заполнено или нет – priya786

1

Используйте эту проверку с JQuery это может быть поможет вам

function formValidation() 
    { 
     if($("input[name='name']").trim() == "") 
     { 
      alert("Please enter the name"); 
      $("input[name='name']").focus(); 
      return false; 
     } 
     return true; 
    } 
0

Попробуйте это ...

function formValidation() 
    { 
     if($("input[name='name']").val().trim() == "") 
     { 
      alert("Please Enter The Name"); 

      return false; 
     } 
     return true; 
    } 
+0

@ Ах Ен я обновил свой ответ –

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