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 に答える