2

同様の質問が寄せられているのを見たことがありますが、どれもうまくいきませんでした。私のものは、いくつかのデータをデータベースに含める単純なフォームで、Web サイトの別の場所にあるテーブルに表示されます。

ただし、このフォームは、何を入力してもデータベースに空白の行を追加するだけです。エラーも何もありません。空白行だけです。

私は完全に機能する別のテーブルに送信する別のフォームを持っているので、本当に混乱しています。

フォームは次のとおりです。

<form method="GET" action="addsuggestion.php">

<label>Game Title:</label>
<input type="text" name="gamename" id="gamename" />

<br />

<label>Game Platform:</label>
<input type="text" name="gameplatform" id="gameplatform" />
<br />

<label>Suggestor Nickname:</label>
<input type="text" name="suggestor" id="suggestor" />

<input type="submit" value="sumbit" />
</form>

そして、addsuggestion.php

<?php
echo'<h1>Suggestion Process</h1>';

$connection = mysql_connect("removed", "removed", "removed") or die("Couldn't Connect!");
mysql_select_db("removed") or die("Couldn't find database!") ;

$gamename = $GET['gamename'];
$gameplatform = $GET['gameplatform'];
$suggestor = $GET['suggestor'];

$query = "INSERT INTO sug (gamename,gameplatform, suggestor) VALUES ('$gamename','$gameplatform','$suggestor')";

$result = mysql_query($query) or die ("Error in query");
echo'Submisson accepted, click <a href="recent.php">here</a> to check it out!';
?> 

送信承認メッセージが表示され、データベースに行が追加されますが、常に空白です。最近の php では、データベースがテーブルとして表示され、新しい空白行が 1 行あります。

主キーとして使用しているidがありますが、自動インクリメントなので含めていません。これは、毎回何かを含む唯一のフィールドです。

4

2 に答える 2

4

そうでは$_GETない$GET

$gamename = mysql_real_escape_string($_GET['gamename']);
$gameplatform = mysql_real_escape_string($_GET['gameplatform']);
$suggestor = mysql_real_escape_string($_GET['suggestor']);
于 2012-10-13T18:17:02.473 に答える
1

あなたのフォームメソッドは「GET」です。これは「POST」である必要があります。

また、変数を使用して、 get を $_POST['gamename'] などに変更します。

また、大文字と小文字が区別されます。表が大文字で書かれていないことを確認してください。

幸運を!

追加情報を編集:

「GET」は基本的にデータを取得 (取得) するためのものであるのに対し、「POST」はデータの保存や更新、製品の注文、電子メールの送信など、何でもかまいません。

ソース: http://www.cs.tut.fi/~jkorpela/forms/methods.html#fund

于 2012-10-13T18:18:11.430 に答える