首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果未在同一日期插入特定行数据,如何检查和插入数据

如果未在同一日期插入特定行数据,如何检查和插入数据
EN

Stack Overflow用户
提问于 2018-02-03 08:24:41
回答 1查看 421关注 0票数 0

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

获取数据的代码:

代码语言:javascript
复制
<?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页面

代码语言:javascript
复制
<?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";
}
}

?>

如果用户单击“签入”按钮。我需要检查该行是否已经在具有相同用户和相同日期的表中。如果不存在,则插入数据,否则显示已存在记录的消息。

EN

回答 1

Stack Overflow用户

发布于 2018-02-03 08:55:32

看看这个

https://chartio.com/resources/tutorials/how-to-insert-if-row-does-not-exist-upsert-in-mysql/#using-insert-ignore

代码语言:javascript
复制
<?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";
            }
}

?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48595407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档