如何将来自用户php的输入与MySQL的输入进行比较

问题描述:

我在教自己的php和MySQL,现在我有一个MySQL问题。如何将来自用户php的输入与MySQL的输入进行比较

我想比较用户输入的电话号码与MYSQL中的电话号码,以及是否在MYSQL中不再注册。

我的代码:

<?php 

require_once 'connection/connection.php'; 

// Variables from HTML to php 
$worker_Name = $_POST['workerNameFromHtml']; // worker Name 
$worker_City = $_POST['workerCityFromHtml']; // workerCity 
$worker_career = $_POST['workerCareerFromHtml']; // worker career 
$worker_PhoneNumber = $_POST['workerPhonNumberFromHtml']; // worker Phone Number 
$worker_SecondPhoneNumber = $_POST['workerSecondPhoneNumberFromHtml']; // worker Second Phone Number 
$submt=$_POST['submitFromHtml']; 

if($submt){ 

    $qry = ("SELECT workrPhoneNumber FROM workersTable WHERE workrPhoneNumber = '$worker_PhoneNumber'") or die(mysql_error()); 
    $result = $connect->query($qry); 
    $num = $result->num_rows; 

    if ($num == 1) { 
    $here = "INSERT INTO workersTable VALUES('','$worker_Name','$worker_City','$worker_career','$worker_PhoneNumber','$worker_SecondPhoneNumber')"; 
    $query = $connect->query($here); 
    print "Successfully added!"; 
    } 
    else {print "This number has already been entered Thank you for your cooperation!";}} 

$connect->close(); 

到目前为止,我还没有找到一个解决这个问题。

+0

你的'$ qry'变量是错误的。检查这个教程https://www.w3schools.com/php/php_mysql_select.asp –

+0

我改变了错误。但不工作。 我会改变和编辑我的问题到我的最终文件。 – hasan

这里你最大的问题是你试图在字符串中包含变量。

"SELECT workrPhoneNumber FROM workersTable WHERE workrPhoneNumber = '$worker_PhoneNumber'" 

如果你想这样做,你需要连接你的变量和你的字符串。

"SELECT workrPhoneNumber FROM workersTable WHERE workrPhoneNumber = '".$worker_PhoneNumber."'" 

请记住,如果您这样做,您将首先要清理变量以防止SQL注入。此外,当您插入变量,你真的想使用一份声明中这样的:

"INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)" 

,其中第一组值是在数据库和第二组的列的名称是你的PHP变量,你正在投入。

+0

这是工作,非常感谢你! – hasan