如何在从其他表插入值时插入值

时间:2019-10-30 03:15:27

标签: php mysql sql sql-insert

我刚刚学习了如何从另一个表插入。现在,我不知道如何添加不在另一个表中的值。

$input_comment = $_POST["comments"];
$sql3 = "INSERT INTO QuotationService (referid, username, date, shiptype, city, country, poe, volume, volume2, service, included, price, comment) 
         SELECT referid, username, date, shiptype, city, country, poe, volume, volume2, service, included, price 
         FROM ServiceHolds 
         WHERE username='$login_session' AND id=(SELECT MAX(id) FROM ServiceHolds)";
mysqli_query($conn, $sql3);

我应该在哪里插入$input_comment

2 个答案:

答案 0 :(得分:1)

您可以简单地将值作为常量包含在SELECT中。请注意,您应该使用准备好的查询来防止SQL注入:

$input_comment = $_POST["comments"];
$sql3 = "INSERT INTO QuotationService (referid, username, date, shiptype, city, country, poe, volume, volume2, service, included, price, comment) 
         SELECT referid, username, date, shiptype, city, country, poe, volume, volume2, service, included, price, ?
         FROM ServiceHolds 
         WHERE username=? 
           AND id=(SELECT MAX(id) FROM ServiceHolds)
        ";
$stmt = $conn->prepare($sql3);
$stmt->bind_param('ss', $input_comment, $login_session);
$stmt->execute();

答案 1 :(得分:0)

尝试执行选择查询时添加注释字段

$input_comment = $_POST["comments"];
$sql3 = "INSERT INTO QuotationService 
         (referid, username, date, shiptype, city, country, poe, volume, volume2, service, included, price, comment) 
         SELECT referid, username, date, shiptype, city, country, poe, volume, volume2, service, included, price, $input_comment as comment FROM ServiceHolds WHERE username='$login_session' AND id=(SELECT MAX(id) FROM ServiceHolds)";
                    mysqli_query($conn, $sql3);