更新.php
<?php
include_once("connection.php");
$name=$_REQUEST['name'];
$email=$_REQUEST['email'];
$mobno=$_REQUEST['mobno'];
$id=$_REQUEST['id'];
$checkemail="SELECT * FROM dhruv_users WHERE email= '$_REQUEST[email] AND id='$id'";
$checkmob="SELECT * FROM dhruv_users WHERE mobno= '$_REQUEST[mobno]' AND id='$id'";
$rsemail = mysqli_query($conn,$checkemail);
$rsmob = mysqli_query($conn,$checkmob);
$dataemail = mysqli_num_rows($rsemail);
$datamob = mysqli_num_rows($rsmob);
if($dataemail >= 1 && $datamob >= 1) {
echo "data_exists";
}
else{
$query=mysqli_query($conn,"update dhruv_users set name='$name',email='$email',mobno='$mobno' where id='$id'");
if($query){
echo "success";
}
else
{
echo "unsuccess";
}
}
?>
好的,这是问题所在,我想在更新电子邮件或手机号码时检查电子邮件 ID 和手机号码是否已被其他人占用。但是当我提交数据时,它显示电子邮件 ID 已被使用,因为我已经在使用该电子邮件 ID 和手机号码。
我想检查其他人而不是我是否使用该电子邮件 ID 和手机号码。
最佳答案
我只是重新编写您的代码并更改它的某些部分,以便它可以给您想要的结果。但在此之前,我会建议你阻止注入(inject)并使用 mysqli,而不是旧的。
<?php
include_once("connection.php");
$name=$_REQUEST['name'];
$email=$_REQUEST['email'];
$mobno=$_REQUEST['mobno'];
$id=$_REQUEST['id'];
$sql_check = "SELECT * FROM dhruv_users WHERE email = '".$email."'
OR mobno = '".$mobno."'" ;
$res_check = mysql_query($sql_check) ;
$row_check = mysql_fetch_array($res_check) ;
if(!empty($row_check)){
echo "data_exists";
}
else{
$query=mysqli_query("update dhruv_users set name='$name', email ='$email', mobno ='$mobno' where id='$id'");
if(mysql_affected_rows() > 0){
echo "Success" ;
}
else{
echo "Update unsuccessful" ;
}
}
?>
关于php - 在使用mysql更新数据期间如何检查输入的字段是否已经存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51120290/