[英]How to make API PHP check if the value exist in another table and then insert?
我想为Android制作API。 我正在使用php中的一个表单将数据插入MySQL,但在插入数据之前,有一个字段必须在插入之前在另一个表中检查。 如果该值存在于另一个表中,则数据将插入主表中,否则,则不插入数据。
这是我的PHP
<?php
if($_SERVER['REQUEST_METHOD']=='POST') {
$response = array();
$username = $_POST['username'];
$SN = $_POST['SN'];
require_once('dbConnect.php');
$sql = "SELECT * FROM produk WHERE SN ='$SN'";
$check = mysqli_fetch_array(mysqli_query($con,$sql));
if(isset($check)){
$response["value"] = 0;
$sql = "INSERT INTO farm (username,SN) VALUES('$username','$SN')";
$response["message"] = "Successful";
echo json_encode($response);
} else {
$response["value"] = 1;
$response["message"] = "oops! Try Again";
echo json_encode($response);
}
mysqli_close($con);
} else {
$response["value"] = 0;
$response["message"] = "oops! Try Again";
echo json_encode($response);
}
?>
如何解决代码?
尝试使用下面的代码,你需要设置一个条件来检查另一个表中是否存在该值。 检查另一个表的mysqli_num_rows,如果num_rows> 0,则插入主表:
<?php
if($_SERVER['REQUEST_METHOD']=='POST') {
$response = array();
$username = $_POST['username'];
$SN = $_POST['SN'];
require_once('dbConnect.php');
$sql = "SELECT * FROM produk WHERE SN ='$SN'";
$check = mysqli_num_rows(mysqli_query($con,$sql));
if($check > 0){
$response["value"] = 0;
$sql = "INSERT INTO farm (username,SN) VALUES('$username','$SN')";
$response["message"] = "Successful";
echo json_encode($response);
} else {
$response["value"] = 1;
$response["message"] = "oops! Try Again";
echo json_encode($response);
}
mysqli_close($con);
} else {
$response["value"] = 0;
$response["message"] = "oops! Try Again";
echo json_encode($response);
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.