我正在尝试从表单提交中的特定列向表中插入数据。我已经确保与数据库有连接。我想知道我是否正确地做到了这一点。这是我的代码:
<?php
$link = mysqli_connect("localhost", "root", "", "db_elcventory");
// Check connection
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
$sql1 = "UPDATE request_items_db (req_qty) VALUES ('$amount1') WHERE item_db.item_id= request_items_db.item_id ";
if (mysqli_query($link, $sql1)){
//$exec = mysqli_query($link, $sql1);
echo "Records added successfully";
}
else {
echo "ERROR: Could not execute.".mysqli_error($link);
}
mysqli_close($link);
?>
错误:无法执行。您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在#(; req_qty)值附近使用正确的语法(&#39; 2&#39;)WHERE item_db.item_id = request_items_db.item_id&#39;在第1行
以下是我的表单布局:
表单包含商品ID,商品名称和金额。 item_ID
和item_name
来自item_db
,但金额需要存储在req_qty
item_id
与item_id
相同的位置在item_db
。
答案 0 :(得分:0)
'
之后你错过了$amout1
。您的查询应如下所示
INSERT INTO request_items_db (req_qty) VALUES ('$amount1')
WHERE
可能会在INSERT INTO SELECT
,UPDATE
或DELETE
语句中使用,但不会在您的INSERT
您正在尝试的更新查询不正确
UPDATE request_items_db (req_qty) VALUES ('$amount1') WHERE item_db.item_id= request_items_db.item_id
应该是
UPDATE request_items_db SET req_qty = '$amount1' WHERE request_items_db.item_id = '$item_id'
答案 1 :(得分:0)
首先,您的语法不正确。它应该是
$sql1 = "INSERT INTO request_items_db (req_qty) VALUES ('$amount1')
WHERE item_db.item_id= request_items_db.item_id ";
其次,您不能将WHERE
与INSERT
一起使用。如果要更新现有字段,请使用UPDATE
查询。您的UPDATE
查询应为
$sql1 = "UPDATE request_items_db SET req_qty='$amount1'
WHERE item_db.item_id= request_items_db.item_id";