首页 > 解决方案 > 如何在同一个文件中使用 UPDATE 子句和 INSERT 子句?

问题描述

这是我在我的html页面中的表单..隐藏的输入用于通知INSERT ..并且“文本”输入和“范围”输入用于更新订单进度,UPDATE语句正在工作,而不是INSERT ..

<form method="POST" action="../PHP/ordprogress.php">

<input type="hidden" value="<?php echo $fetch['username']?>" name="username">
<input type="hidden" value="Admin" name="name">
<input type="hidden" value="Update!" name="notif">
<input type="hidden" value="Your progress has been updated!" name="details">
<input type="hidden" value="<?php echo date('Y/m/d H:i:s'); ?>" name="date">
<input type="hidden" value="unread" name="status">

<input type="text" name="uid" value="" placeholder="Order Number..">
<input type="range" step="25" min="0" max="100" value="50" name="ordprogress" class="sliderper" id="myRange">

<button type="submit" value="Update" name="Update">Update</button>
</form>

这是我的 ordprogress.php 脚本,它应该在订单进度更新插入一行(通知)。我让它工作了两次,然后我尝试修复一些东西然后它停止工作,当我恢复代码时仍然没有工作大声笑

<?php 
session_start();

require("/var/www/vhosts/mysite.co.uk/httpdocs/PHP/connect.php");

if (isset($_POST['Update'])) {

    $ordprogress = $_POST['ordprogress'];
    $uid = $_POST['uid'];

    $stmt = "UPDATE device_repairs SET ordprogress = :ordprogress WHERE uid = :uid";
    $stmt = $dbh->prepare($stmt);
    $stmt->bindParam(':ordprogress', $_POST['ordprogress'], PDO::PARAM_STR);
    $stmt->bindParam(':uid', $_POST['uid'], PDO::PARAM_STR);
    $stmt->execute();


    $uid = $_POST['uid'];
    $username = $_POST['username'];
    $name = $_POST['name'];
    $notif = $_POST['notif'];
    $details = $_POST['details'];
    $date = $_POST['date'];
    $status = $_POST['status'];

    $sql = 'INSERT INTO `notifications` (uid, username, name, notif, details, date, status) VALUES (:uid, :username, :name, :notif, :details, :date, :status)';

    $inst = $dbh->prepare($sql);
                                                              
    $inst->execute(['uid' => $uid, 'username' => $username, 'name' => $name, 'notif' => $notif, 'details' => $details, 'date' => $date, 'status' => $status]);

    ?>

    <meta http-equiv="refresh" content="0; URL=https://www.mysite.co.uk/Profile/admin.php" />

    <?php

    }

    ?>

标签: phphtmlsqlformspdo

解决方案


推荐阅读