1

运行以下脚本时,它会显示错误错误:“字段列表”中的“未知列”“电子邮件”。

  <?php
  include("connect.php");

  if($loggedin == '1')
  die("You can't register another account while you're logged in.");

  if(isset($_POST['submit']))
  {

  $uname = trim($_POST['username']);

 if($_POST["regkey"]!="171717")
 die("Invalid Registration Key. <br> <a href= register.php>Back</a>");

 if($_POST["pass"]!=$_POST["pass2"])
 die("Passwords do not match. <br> <a href= register.php>Back</a>");

 // Make sure all forms were filled out.

 if((!isset($_POST['username'])) || (!isset($_POST['pass']))
 || ($uname == '') || ($_POST['pass'] == ''))
 die("Please fill out the form completely. <br><br>
 <a href=register.php>Continue</a>");


 $check = @mysql_query("SELECT id FROM players WHERE username = '$uname'");
 $check = @mysql_num_rows($check);

 if($check > 0)
 die("Sorry, that username has already been taken. Please try again.
 <br><br>
 <a href=register.php>Continue</a>");


 $pass = md5($_POST['pass']);

 $date = date("m/d/y");


 $newPlayer = @mysql_query("INSERT INTO players (username, password,   

registered,callname,email) VALUES   ('$uname','$pass','$date','$_POST

[callname]','$_POST[email]')") or die("Error: ".mysql_error());

echo 'You have been registered! You may now <a href=index.php>Log in</a>.';


}
else
{

// A simple example of a form.

echo '
<center>
<form action=register.php method=post>
<p>Registration is currently<b> NOT OPEN.</b><br>
 You must have a valid Registration key to register.</p>
 <table border="2">
 <tr>
<td>Username:</td><td><input type="text" name="username" size="20px"</input>
</td>
</tr>
<tr>
<td>Callname:</td><td><input type="text" name="callname" size="20px"</input>
</td>
</tr>
<tr>
<td>Password:</td><td><input type="password" name="pass" size="20px"</input>
</td>
</tr>
<tr>
<td>Re-type Password:</td><td><input type="password" name="pass2" size="20px"</input>  
</td>  </tr>
<tr>
<td>Email:</td><td><input type="text" name="email" size="20px"</input></td>
</tr>
<tr><td>Registration Key:</td><td><input type="text" name="regkey" size="20px"></input>                                                                                         

 </td>    </tr>
 </table>
 <input type="submit" name="submit" value="Submit"></input>
 </form>';

 }


 ?>

我对 PHP 很陌生,不知道为什么会出现这个错误。$_POST 不应该从表单中获取该值吗?谢谢阅读。

4

3 回答 3

4

这意味着您的players表不包含email列。您需要将此列添加到您的表中才能使此脚本正常工作。

所以你的代码中不正确的部分是

$newPlayer = @mysql_query("INSERT INTO players(username, password, registered, callname, email)
                           VALUES('$uname', '$pass', '$date', '$_POST[callname]', '$_POST[email]')") or die("Error: ".mysql_error());
于 2012-07-21T04:42:59.173 回答
0
  1. email在您的玩家表中添加一个字段。
  2. email您可能在播放器中拼错了。
于 2012-07-21T04:46:36.997 回答
0
$sql = "INSERT INTO user_registration (u_name,s_father,s_schoolname,s_rollno,s_class)
VALUES ($name,$father,$school,$rollno,$class)";

错误:INSERT INTO user_registration (u_name,s_father,s_schoolname,s_rollno,s_class) VALUES (Azhar, hassan, Chulli_payaan,1008,10th) “字段列表”中的未知列“Azhar”

于 2016-12-11T07:31:04.940 回答