PHP进程页面不起作用

时间:2013-03-30 01:57:20

标签: php

大家好,我的流程页面不起作用,我的代码是

<?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;

所有与我之前输入的相同。

有人能帮帮我吗?谢谢: - )

2 个答案:

答案 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')";