0
<html>
  <head>
    <title>
      Welcome
    </title>
  </head>
  <body>
    <?php
$fn=$_POST['f_name'];
$ln=$_POST['l_name'];
$gen=$_POST['sex'];
$dob=$_POST['dob'];
$em=$_POST['email'];
$un=$_POST['u_name'];
$pd=$_POST['pswd'];
$mb=$_POST['mob'];
$con=mysqli_connect('localhost','username','password','db')
   or die("Error connecting to database");
$query="INSERT INTO user_details(First_Name, Last_Name, Gender, DOB, Email_Address,
Username, Password, Mobile_No) VALUES                   
('$fn','$ln','$gen','$dob','$em','$un',SHA('$pd'),'$mb')";
echo $gen;
$result=mysqli_query($con,$query) 
  or die("Error querying the database");

mysqli_close($con);
$name=$fn.' '.$ln;
echo "<b>Welcome $name</b>";
    ?>
  </body>
</html>

我在这段代码中试图做的是从 HTML 表单中获取数据并将其存储到 MYSQL 数据库中。我什至彻底检查了我的数据库是否存在任何类型冲突或任何数据类型长度问题,但我仍然没有得到它。我不知道它为什么显示 >> 查询数据库时出错?提前致谢。

4

3 回答 3

3

改变

$result=mysqli_query($con,$query) 
  or die("Error querying the database");

$result=mysqli_query($con,$query) 
  or die($mysqli->error);

这将为您提供来自服务器的确切错误消息。文档在这里

于 2012-05-03T14:59:44.413 回答
1

首先,您应该在 mysqli 中使用准备好的语句。这很简单。

其次,你应该使用...or die($mysqli->error)来查看错误信息。

于 2012-05-03T14:59:40.007 回答
0

来自有线索的人的正确代码,以防查询失败

$result = mysqli_query($con,$query) 
  or trigger_error(mysqli_error($con)." ".$query);
于 2012-05-03T15:05:20.863 回答