大家好,我的流程页面不起作用,我的代码是
<?php
$id = $_POST['item_id'];
$qty = $_POST['item_qty'];
$name = $_POST['item_name'];
$con = mysqli_connect ("localhost", "name", "password", "db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "INSERT INTO Temp (id, qty, name)
VALUES
('$_POST[id]', '$_POST[qty]', '$_POST[name]')";
if (!mysqli_query($con, $sql))
{
die('Error: ' . mysqli_error());
}
header('Location: http://url.com/');
mysqli_close($con);
&GT;
应该都是正确的,只需从w3school复制, 问题是,db只能得到0,
即。我的$ id是4,$ qty是12,$ name是“Hello”,在进程页面之后,表只能在id和qty中获得两个0,名称无效。
应该成功地将值处理到此流程页面,bc我已经尝试过
echo $id, $qty, $name;
所有与我之前输入的相同。
有人能帮帮我吗?谢谢: - )
答案 0 :(得分:0)
这一行:
INSERT INTO Temp (id, qty, name) VALUES ('$_POST[id]', '$_POST[qty]', '$_POST[name]')";
应该是:
INSERT INTO Temp (id, qty, name) VALUES ('$id', '$qty', '$name')";
如果form
来自your previous question,则您不需要:
$id = $_POST['item_id'];
$qty = $_POST['item_qty'];
$name = $_POST['item_name'];
答案 1 :(得分:0)
我同意你似乎遗漏了item_。您可能希望首先清理数据。
$id=mysqli_real_escape_string($_POST['item_id']);
$qty=mysqli_real_escape_string($_POST['item_qty']);
$name=mysqli_real_escape_string($_POST['item_name']);
$sql = "INSERT INTO Temp (id, qty, name)
VALUES ('$id', '$qty', '$name')";