SQL照会で$_GET
と$_POST
の両方を使用しようとしています。以下は私のコードです
<?php
$assignment = mysql_real_escape_string($_GET['name']);
echo "$assignment <br>";
if (isset($_POST['add'])) {
$user = $_POST['username'];
$text = $_POST['comment'];
$query = "INSERT INTO comments (user, text, assignment) VALUES ('$user', '$text', '$assignment')";
mysql_query($query) or die('Error, comment failed to post');
}
?>
<h1>Add Comment</h1>
<form action="log_entry.php" method="post">
Name:<br/>
<input type="text" name="username" value="" />
<br /><br />
Comment:<br />
<textarea style="height:200px;" type="text" name="comment" value="" ></textarea>
<br /><br />
<input type="submit" name="add" value="Add Comment" />
</form>
しかし、$assignment
変数はクエリでは機能しません。クエリが行われる前に正しくエコーされますが、の後のテーブル内の値は空です。この原因は何ですか?代わりに結合しようとしているの
を' $ _POST'は、その後、あなたのURLは、あなたが望むものを含める必要があります例えば、 'log_entry.php?name = something'のように、GETのために。このURLに投稿すると、 '$ assignment'は' something'になります。 –
URLは既にその情報を持っています – Ankush
** 'GET' **引数は、フォームの*' action' *属性でURL *に指定する必要があります。* –