从SQL中获取数据并对照表单进行检查


Get data from SQL and check it against form

如何从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);

?>

您有两个选项:

  • 您可以将唯一索引添加到任何希望唯一的字段。它们将导致任何违反唯一性约束的插入失败,然后您可以捕获这些插入并将其反馈给应用程序
  • 您可以尝试在表中选择希望唯一的字段,看看是否返回结果。如果您这样做,您可以向用户返回错误

我认为这就是您所需要的:

$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';
}