0

SQL テーブルの列からすべてのデータを取得し、フォームから取得したデータと照合するにはどうすればよいでしょうか? これが私がこれまでに持っているものです:

<?php
 $con=mysqli_connect("www.tqbtest.comlu.com","a5349216","Password","a5349216_test");
 if (mysqli_connect_errno())
   {
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
   }

 //How do I check the data from the form to make sure there is no username/email already used?

 $sql="INSERT INTO Profiles (firstName, lastName, username, email, password, region, profileGroup, verified)
 VALUES
 ('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";

 if (!mysqli_query($con,$sql))
   {
   die('Error: ' . mysqli_error($con));
   }
 echo "1 record added";

 mysqli_close($con);


?>
4

2 に答える 2

0

いくつかのオプションがあります。

  • 一意にしたい任意のフィールドに一意のインデックスを追加できます。これらは、一意性制約に違反する挿入を失敗させ、それをキャプチャしてアプリケーションにフィードバックできます。
  • 一意にしたいフィールドのテーブルに対して選択を実行して、結果が返されるかどうかを確認できます。その場合、ユーザーにエラーを返すことができます。
于 2013-06-30T00:06:40.283 に答える
0

これが必要なものだと思います:

$DBsql = mysql_query("select col1, col2 from table_name where some_id = $some_id");
$sql = mysql_fetch_array($DBsql);

if(($_POST['field1'] == $sql['col1']) && ($_POST['field2'] == $sql['col2'])) {
    echo 'The fields are valid';
} else {
    echo 'One or more fields are not valid';
}
于 2013-06-30T00:18:14.157 に答える