• ベストアンサー
  • すぐに回答を!

MySQLでGETで2件同じものが登録されてしまいます

  • 質問No.3115453
  • 閲覧数167
  • ありがとう数2
  • 回答数3

お礼率 81% (47/58)

PHP、MySQLとも初心者で、お世話になっています。

<form name="~" method="GET" action="~.php">
入力1<input type="text" name="na1"><br>
入力2<input type="text" name="na2"><br>
<input type="submit" value="送信">
</form>

で送信し、PHP側で

$tem1=$_GET["na1"];
$tem2=$_GET["na2"];
mysql_select_db("~");
mysql_query("insert into tb1 values (\"$tem1\",\"$tem2\")");

とすると、結果的に同じデータが2件登録されてしまいます。
何が問題なのでしょうか。
教えていただけるとありがたいのですが。
どうか、よろしくお願いいたします。

質問者が選んだベストアンサー

  • 回答No.2
  • ベストアンサー

ベストアンサー率 63% (239/379)

2回insertのクエリーを発行しているんじゃないですか?としか・・
mysql_query()に至るまでの処理を見直されてみては?
どんな情報かは分かりませんが、$_POSTの方がよいと思います。
お礼コメント
kiyonisi

お礼率 81% (47/58)

ありがとうございます。
単純なテキストを、単純に送っているだけなのですが、
POSTだと問題ないようです。
1回目は1つだけ送られて、戻ってから2回目のデータを送ると
1回目も2つ、2回目も2つと、重複してしまいます。
何か、前のデータが残っているようです。
ちなみにOSはVistaです。
投稿日時:2007/06/28 00:36

その他の回答 (全2件)

  • 回答No.3

ベストアンサー率 32% (598/1831)

多分ソースに問題があるような気がします。

>戻ってから2回目のデータを送ると

とはどのように戻るのかはわかりませんが、その際に余計な値をつけているように思えます。

ソースを開示していただければもう少し具体的な回答がつけられると思います。
  • 回答No.1

ベストアンサー率 32% (598/1831)

問題はないように見えます。

・ソースは全文ですか?
・問題がある値と問題のない値がありますか?
お礼コメント
kiyonisi

お礼率 81% (47/58)

さっそく回答いただき、感謝しております。
全文ではないのですが、
<form name="~" method="GET" action="~.php">

$tem1=$_GET["na1"];
$tem2=$_GET["na2"];
とすると二重に登録されてしまうのですが、

<form name="~" method="POST" action="~.php">

$tem1=$_POST["na1"];
$tem2=$_POST["na2"];
とすると、問題ないようなのですが。
申し訳ありません、知識がないもので。教えていただけるとありがたいです。
投稿日時:2007/06/26 20:56
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ページ先頭へ