我想要将特定的行数据插入到我的数据库表中,但是首先,我们必须检查数据库表中是否存在行数据。如果记录不存在,则将userid、companyid和当前日期插入到表中。以下是清单:

获取数据的代码:
<?php
$con=mysqli_connect("localhost" , "root" , "" , "accounts");
if (!$con) {
echo "connection failed";
}
$query= "
SELECT *
FROM company
WHERE catagory = 'A'
";
/*"SELECT * FROM `company` WHERE catagory='A'";*/
$result=mysqli_query($con,$query);
while ($row=mysqli_fetch_array($result)) {
?>
<tbody>
<tr>
<td><a href='/bw/gymdetail.php?id=<?=$row['id'];?>'><?=$row['id'];?></a></td>
<td><a href='/bw/gymdetail.php?id=<?=$row['id'];?>'><?=$row['first_name']?></a></td>
<td><?=$row['u_city'];?></td>
<td><?=$row['u_address'];?></td>
<td><a href='/bw/login-system/checkin.php?id=<?=$row['id'];?>&uid=<?=$_REQUEST['id'];?>'> Check In</a></td>
</tr>
</tbody>
<?php
}
?> checkin.php页面
<?php
require 'db.php';
if (isset($_GET['uid'])) {
$id = $_GET['id'];
$uid = $_GET['uid'];
$now=new datetime();
$date = $now->format('m-d-y');
$sql = $mysqli->query("
SELECT *
FROM checkins
WHERE userid = '$id'
AND `dateis` = '$date'
");
$productcount = $sql->num_rows;
if($productcount == '1'){
$sql = "
INSERT INTO checkins (userid, companyid, dateis)
VALUES ('$uid','$id','$date')
";
$query = mysqli_query($mysqli,$sql);
}
else{
echo "already clicked";
}
}
?>如果用户单击“签入”按钮。我需要检查该行是否已经在具有相同用户和相同日期的表中。如果不存在,则插入数据,否则显示已存在记录的消息。
发布于 2018-02-03 08:55:32
看看这个
<?php
require 'db.php';
if (isset($_GET['uid'])) {
$id = $_GET['id'];
$uid = $_GET['uid'];
$now=new datetime();
$date = $now->format('m-d-y');
$sql = "INSERT IGNORE INTO checkins (userid, companyid, dateis) "
. "VALUES ('$uid','$id','$date')";
$query = mysqli_query($mysqli,$sql);
if(!mysqli_affected_rows($mysqli)){
echo "already clicked";
}
}
?>https://stackoverflow.com/questions/48595407
复制相似问题