2012-12-05 48 views
0

PHP形式選擇&無線電錯誤 我有一個表格,但我的選擇按鈕,單選按鈕 錯誤我是$年齡和$性別PHP形式選擇與無線電錯誤

了PHP的錯誤如何打印錯誤信息在同一頁?

這裏是PHP代碼

$firstname=""; $lastname=""; $email=""; $re_email=""; 

if(isset($_POST['register'])){ 
    $firstname=strip_tags($_POST['firstname']); 
    $lastname=strip_tags($_POST['lastname']); 
    $email=strip_tags(strtolower($_POST['email'])); 
    $re_email=strip_tags(strtolower($_POST['re_email'])); 
    $password=strip_tags($_POST['password']); 
    $re_password=strip_tags($_POST['re_password']); 
    $age=$_POST['age']; 
    $gender=$_POST['gender']; 
    $date=date("Y-m-d"); 

    if($firstname && $lastname && $email && $re_email && $password && $re_password && $age && $gender){} 
    else{die("Please fill in all fields");} 

    //USERNAME CHECKING////////////////////////////////////////////////////////////////// 
    $connect=mysql_connect("localhost", "root", ""); 
    $database=mysql_select_db("phplogin", $connect); 
    $namecheck=mysql_query("SELECT email FROM users WHERE email='$email'"); 
    $count=mysql_num_rows($namecheck); 
    if($count!=0) 
    {die("Username already taken");} 

這裏是HTML代碼

<html> 
<H1>Register</H1> 
    <form action="register.php" method="POST"> 
    <table> 
     <tr> 
      <td>First Name:</td> 
      <td><input type="text" name="firstname" value="<?PHP echo $firstname;?>" maxlength="25"/></td> 
      <td>Maxium 25 characters</td> 
     </tr> 

     <tr> 
      <td>Last Name:</td> 
      <td><input type="text" name="lastname" value="<?PHP echo $lastname;?>"maxlength="25"/></td> 
      <td>Maxium 25 characters</td> 
     </tr> 

     <tr> 
      <td>email:</td> 
      <td><input type="text" name="email" value="<?PHP echo $email;?>"maxlength="40"/></td> 
      <td>Maxium 40 characters</td> 
     </tr> 

     <tr> 
      <td>Re-enter email:</td> 
      <td><input type="text" name="re_email" value="<?PHP echo $re_email;?>"maxlength="40"/></td> 
     </tr> 

     <tr> 
      <td>Password:</td> 
      <td><input type="password" name="password" maxlength="25"/></td> 
      <td>Password must be between 6 and 25 characters</td> 
     </tr> 

     <tr> 
      <td>Re-eneter Password:</td> 
      <td><input type="password" name="re_password" maxlength="50"/></td> 
     </tr> 
    </table> 
    <select> 
      <option value="">Age</option> 
      <option name="age" value="18-29">18-29</option> 
      <option name="age" value="30-39">30-39</option> 
      <option name="age" value="40-49">40-49</option> 
      <option name="age" value="50-59">50-59</option> 
      <option name="age" value="60-69">60-69</option> 
      <option name="age" value="70">70 Plus</option> 
     </select> 
     <input type="radio" name="gender" value="male" />Male 
     <input type="radio" name="gender" value="female" />Female 
    <input type="submit" name="register" value="Register" /> 
    </form> 
</html> 
+1

「我得到的錯誤是$年齡和$性別」這是什麼意思? –

+0

$ namecheck = mysql_query(「SELECT name FROM users WHERE email ='$ email'」); –

回答

0

啓用錯誤報告,添加到您的網頁:

ini_set('display_errors',1); 
error_reporting(E_ALL); 

要允許錯誤報告的所有頁面,添加爲php.ini:

error_reporting = E_ALL 
display_errors = On 

並重新啓動Apache服務。

更改玩具選擇:

<select name="age"> 
    <option value="18-29">18-29</option> 
    <option value="30-39">30-39</option> 
    <option value="40-49">40-49</option> 
    <option value="50-59">50-59</option> 
    <option value="60-69">60-69</option> 
    <option value="70">70 Plus</option> 
</select> 
0

從register.php表單 之下把代碼,把表單的動作是相同的頁面,然後 您將能夠在同一頁面上顯示錯誤

<form action="<?php echo $_SERVER['PHP_SELF'] ?>" 
0

首先在你的HTML,你的選擇,你需要在SELECT設置「名稱」,而不是上的選項。

+0

當用戶沒有選擇任何性別時,我在該行發生了錯誤 –

+0

然後你有兩種解決方案:在你的INPUT收音機中設置一個默認值,通過添加「checked」或「checked ='選中'」(不一樣,具體取決於你的文檔類型)_或_檢查你的PHP是否存在「if(isset($ _ POST ['gender'])...」 –