2016-03-29 13 views
0

kullanarak seçili değerleri alamamış olmasından dolayı üst etiket ön etiketini sağladım, böylece ragister butonunu tıkladığımda hangi değerlerin çıkacağını görebiliyorum, tüm değerler doğru olarak hobilerin dışında doğru gidiyor " "neden bu kadar, lütfen bilmeme izin verin ve php için yeniyim, lütfen olabildiğince ayrıntılı olarak açıklayın.Hobilerdeki hata, PHP

<?php 

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

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

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

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

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

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

    if(!isset($_POST['hobbies'])) 
    { 
     $err ="Please Enter your hobbies"."<br>"; 
     array_push($error_array,$err); 
    } 
    else 
    { 
     $hobbies = test_input($_POST['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="post"> 
<table> 
<tr> 
<p class="heading">Ragistration Form</p> 
</tr> 

<?php 
if($error_array !="") 
{ 
    foreach($error_array as $value) 
    { 
     echo "<tr><td> ". $value. "</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" type="checkbox" id="hobbies" class="inputfield_Name" />Cricket 
    <input name="hobbies" type="checkbox" />Singing 
    <input name="hobbies" type="checkbox" />Travling</td> 
<tr> 
<td></td> 
<td> 
    <input name="hobbies" type="checkbox" class="inputfield_Name"/>Writing 
    <input name="hobbies" type="checkbox" />Teaching 
    <input name="hobbies" 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> 

cevap

2

Sen değeri onay kutusu öğelerine niteliklerini eklemek gerekir:

<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="travelling" 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> 
+0

Thanx, @Jamkelvl ... Bir şey daha i' olarak "cinsiyet" doğrulama yapmak için başka bir basit bir yol var Bunu anlayamıyorum .... kodumda – Shanky

+0

Bu bağlantı sizinki gibi bir form gösterir ve doğrulamayı tartışır. Belki bu yardımcı olacaktır. [PHP Form Doğrulama] (http://www.w3schools.com/php/php_form_validation.asp) – lovermanthing

+0

Cinsiyet radyo düğmesinin kontrol edilip edilmediğini doğrulamaya çalışıyor musunuz? Eğer öyleyse jQuery'den bir değeri mümkün olmayan bir PHP dizisine aktarmaya çalışıyormuşsunuz gibi görünüyor. PHP bir sunucu tarafı dili ve jQuery istemci tarafıdır. Javascript etkin olmayan kullanıcıları da kapsamak istiyorsanız, doğrulama işleminizi jQuery ya da sadece PHP ile yapmanız gerekir. –