2016-03-29 17 views
-1

Kullanarak Formda herhangi bir alanda değer sağladığımda ve ragister üzerine tıkladığımda gönderilir, ancak tüm alan dolduruluncaya kadar gönderilmemelidir. bildiğim kadarıyla üst etiketin üst kısmında olduğu gibi, ragister'e tıkladığımda elde ettiğim tüm değerleri görebiliyorum.Form alanından herhangi bir değer sağlaması durumunda Form gönderilir.

<?php 

$error_array = array(); 
$fname = $lname = $email = $dob = $Mchecked = $Fchecked = $hobbies =""; 

if(isset($_GET["sbt_save"])) 
{ 
echo '<pre>'; print_r($_GET); echo "</pre>"; 
    if($_GET['fname']=="") 
    {   
     $err ="Please Enter your first name"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $fname = test_input($_GET['fname']); 
    } 

    if($_GET['lname']=="") 
    { 
     $err ="Please Enter your last name"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $lname = test_input($_GET["lname"]); 
    } 

    if($_GET['email']=="") 
    {  
     $err ="Please Enter your email"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $email = test_input($_GET["email"]); 
    } 

    if($_GET['dob']=="") 
    { 
     $err ="Please Enter your date of birth"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $dob = test_input($_GET["dob"]); 
    } 

    if(!isset($_GET["gender"])) 
    { 
     $err ="Please select gender"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $gender = $_GET["gender"]; 
     if ($gender == "Male") 
     { 
      $Mchecked = "checked"; 
     } 
     else if ($gender == "Female") 
     { 
      $Fchecked = "checked"; 
     } 
    } 

    if(!isset($_GET['hobbies'])) 
    { 
     $err ="Please Enter your hobbies"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $hobbies = test_input($_GET['hobbies']); 
    } 
} 

function test_input($data) 
{ 
    $data = trim($data); 
    $data = stripslashes($data); 
    $data = htmlspecialchars($data); 
    return $data; 
} 


?> 
<!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=utf-8" /> 
<title>Ragistration Form</title> 
<link rel="stylesheet" type="text/css" href="ragistration_form.css"> 
<!-- 
<script src="jquery-2.2.1.min.js"></script> 
<script> 

$(document).ready(function(event) 
{  
    $(".sbt_button").click(function(event) 
    {   
     var error_arr = [];    
     var email_value = $("#email").val();      
     var position_of_at = email_value.indexOf('@');   
     var position_of_dot = email_value.lastIndexOf('.'); 



     if($("#fname").val() == null || $("#fname").val() == "") 
     { 
      var err = "First Name"; 
      error_arr.push(err); 
     } 

     if($("#lname").val() == null || $("#lname").val() == "") 
     { 
      var err = "Last Name "; 
      error_arr.push(err); 
     } 
     if(position_of_at == -1 || position_of_dot == -1 || (position_of_at + 2) >= position_of_dot) 
     { 
      var err = "Email "; 
      error_arr.push(err); 
     } 

     if($("#dob").val() == null || $("#dob").val() == "") 
     { 
      var err = "Date of Birth "; 
      error_arr.push(err); 
     } 

     if(!$("input[type='radio']").is(":checked")) 
     { 
      var err = "Gender "; 
      error_arr.push(err); 
     } 

     if(!$("input[type='checkbox']").is(":checked")) 
     { 
      var err = "Hobbies "; 
      error_arr.push(err); 
     } 


     if(error_arr.length !=0) 
     { 
      event.preventDefault(); 
      alert(error_arr); 
     }   
    }); 
}); 

</script> 
--> 
</head> 
<body> 
<form class="form" name="myForm" action="" method="GET"> 
    <table> 
    <tr> 
     <p class="heading">Ragistration Form</p> 
    </tr> 
    <?php 
if($error_array !="") 
{ 
    foreach($error_array as $value) 
    {  
     echo "<tr style='color:red;'><td> ". $value. "</td></tr>";     
    } 
} 

?> 
    <tr> 
     <td></td> 
     <td></td> 
    </tr> 
    <tr> 
     <td class="field_Name">First Name :<b style="color:red">*</b></td> 
     <td><input type="text" name="fname" id="fname" class="inputfield_Name" /></td> 
    </tr> 
    <tr> 
     <td class="field_Name">Last Name :<b style="color:red">*</b></td> 
     <td><input type="text" name="lname" id="lname" class="inputfield_Name" /></td> 
    </tr> 
    <tr> 
     <td class="field_Name">Email :<b style="color:red">*</b></td> 
     <td><input type="text" name="email" id="email" class="inputfield_Name" /></td> 
    </tr> 
    <tr> 
     <td class="field_Name">Date of Birth :<b style="color:red">*</b></td> 
     <td><input type="date" name="dob" id="dob" class="inputfield_Name" /></td> 
    </tr> 
    <tr> 
     <td class="field_Name">Gender :<b style="color:red">*</b></td> 
     <td><input type="radio" name="gender" value="Male"class="inputfield_Name" <?php echo $Mchecked;?> /> 
     Male 
     <input type="radio" name="gender" value="Female" <?php echo $Fchecked;?> /> 
     Female</td> 
    </tr> 
    <tr> 
     <td class="field_Name">About Yourself :</td> 
     <td><textarea name="abt" class="inputfield_Name"$></textarea></td> 
    </tr> 
    <tr> 
     <td class="field_Name">Hobbies :<b style="color:red">*</b></td> 
     <td><input name="hobbies" value="Cricket" type="checkbox" id="hobbies" class="inputfield_Name" /> 
     Cricket 
     <input name="hobbies" value="Singing" type="checkbox" /> 
     Singing 
     <input name="hobbies" value="Travling" type="checkbox" /> 
     Travling</td> 
    <tr> 
     <td></td> 
     <td><input name="hobbies" value="Writing" type="checkbox" class="inputfield_Name" /> 
     Writing 
     <input name="hobbies" value="Teaching" type="checkbox" /> 
     Teaching 
     <input name="hobbies" value="Driving" type="checkbox" /> 
     Driving </td> 
    </tr> 
    <tr> 
     <td></td> 
     <td><input type="submit" value="Ragister" name="sbt_save" class="sbt_button"/></td> 
     </td> 
    </tr> 
    </table> 
</form> 
</body> 
</html> 
+0

Şu anki haliyle, form gönderim geçersiz olsa da gönderecektir. PHP'nin sunucu tarafı olduğunu kabul etmek önemlidir, bu nedenle bu doğrulama gönderildikten sonra gerçekleşecektir. JavaScript, istemci tarafıdır ve herhangi bir alan geçersizse hemen formu doğrulamak ve form gönderimini önlemek için kullanılabilir. Görüyorum ki bazı JavaScript'in var ama yorumlandı. Kodun bir kısmı ile ilgili bir sorun mu var? – War10ck

+0

@ War10ck çalışma yok sadece php'nin doğrulama çalışıp çalışmadığını kontrol etmek istedim değil mi? – Shanky

cevap

0

Kodunuzu denedim, iyi çalışıyor. Aşağıdaki ekran görüntüsüne bakın.

enter image description here önce formunuzu doğrulamak sonra teslim yorumladı javascript/istemci tarafı doğrulama kullanmak ve isterseniz

bunu sonradan ardından php/sunucu tarafı doğrulama kullanmak doğrulamak istiyorum.

Başka bir sorunla karşılaşırsanız bildirin.