フォームがあり、フォームに入力したら、データをデータベースに挿入したいと思います。現在、データベースには「フィードバック」と「日付」の2つの列があります。ただし、現時点では、「フィードバック」ではなく、「日付」のみがデータベースに挿入されます。
HTMLフォーム:
<form class="form-inline" action="JavaScript:sendFeedback()" method="get">
<textarea name="Feedback" placeholder="Feedback..." rows="5" cols="100"></textarea>
<button type="submit" class="btn">Tell us</button>
</form>
Javascript:
function sendFeedback() {
_gaq.push(['_trackPageview', 'OutgoingLink=SendFeedback' ]);
$.get("../php/NewFeedback.php",{Feedback:$('input[name="Feedback"]').val()});
var element = document.getElementById("FeedbackArea");
element.innerHTML = "<div class=\"alert alert-success\"> <a class=\"close\" data-dismiss=\"alert\" href=\"#\">×</a>Thanks for your feedback!</div>";
return false;
}
php:
$db = MySql::getInstance(DATABASE_HOST, DATABASE_USER, DATABASE_PASS, DATABASE_NAME);
$Feedback = mysql_real_escape_string($_GET['Feedback']);
//create the sql statement
$sql = "INSERT INTO Feedback VALUES('{$Feedback}', CURDATE());";
//execute the query
$res = $db->query($sql);
そして、私が言ったように、テキストエリアに何かを入力して「Tell us」ボタンを押すと、データベースは新しいエントリを取得しますが、「Feedback」属性は空です(そして日付が入力されます)。
どうしてこれなの?