0

こんにちは、プロセス ページが機能しません。私のコードは

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

?>

すべて正しいはずです.w3school からコピーするだけです.問題は,データベースが 0 しか取得できないことです.

すなわち。私の $id は 4、$qty は 12、$name は「Hello」です。プロセス ページの後、テーブルは id と qty で 2 つの 0 しか取得しません。名前は無効です。

値はこのプロセス ページに正常に処理されるはずです。bc 私は試しました

echo $id, $qty, $name;

前に入力したものとすべて同じです。

誰でも私を助けることができますか?ありがとう :-)

4

2 に答える 2

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からのものである場合は、次の必要はありません。

$id = $_POST['item_id'];
$qty = $_POST['item_qty'];
$name = $_POST['item_name'];
于 2013-03-30T02:06:24.423 に答える
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')";
于 2013-03-30T02:09:26.683 に答える