0
<form method="post" action="updatescreen(2).php">
Name of company:<br />
<input type="text" name="artid" id="artid" size="50" /><br /><br />
<input type="submit" name="Insert" id="Insert" value="Insert" /><br /><br />

<?php
if(isset($_POST['Insert'])){
    $id = $_POST['artid'];

    mysql_query("INSERT INTO test (id) VALUES ('$id', )");
}

?></form>

データベースへの接続は含まれているため、ここでは説明しません。接続は正常に機能しています。それは問題ではありません。

問題は、php コードが機能しないことです。PHPコードはデータをデータベースに挿入しません。どうしたの?

4

5 に答える 5

3

あなたは,アフターを持っていました'$id'

mysql_query("INSERT INTO test (id) VALUES ('$id')");

コードはSQL インジェクションに対してもオープンです。非推奨の mysql_* 関数の代わりに、PDOのようなものを使用する必要があります。PDO を使用すると、準備済みステートメントを使用して SQL インジェクションを防ぐことができます。

于 2013-11-06T13:32:23.877 に答える
3

変化する

mysql_query("INSERT INTO test (id) VALUES ('$id', )");

mysql_query("INSERT INTO test (id) VALUES ('$id')");
于 2013-11-06T13:32:39.067 に答える
2

コンマが 1 つ多すぎます。

mysql_query("INSERT INTO test (id) VALUES ('$id')");

将来的には、エラーを印刷してみてください。これは、問題を自分でデバッグするのに役立ちます。

mysql_query("INSERT INTO test (id) VALUES ('$id')") or die(mysql_error());

また、安全ではなく非推奨の関数の代わりにPDOorを使用してください。mysqlimysql_

于 2013-11-06T13:34:09.227 に答える
0

試す

<?php if(isset($_POST['Insert'])){
    $id = $_POST['artid'];

    mysql_query("INSERT INTO test (id) VALUES ('".$id."')")or die(mysql_error());
}?>


  <form method="post" action="updatescreen(2).php">
Name of company:<br />
<input type="text" name="artid" id="artid" size="50" /><br /><br />
<input type="submit" name="Insert" id="Insert" value="Insert" /><br /><br />

⇒ 安全性を考えよう!

于 2013-11-06T13:35:31.620 に答える