【发布时间】:2011-08-26 00:52:57
【问题描述】:
我正在努力获得 $.ajax 调用以正确地将一些表单数据发送到 PHP(它被记录到数据库然后显示)。我很难过,因为我之前有 $.ajax 来完成类似的任务,而且效果很好,但我必须在这里遗漏一些关键的东西。我研究了其他答案(例如this one),但在那里找不到任何表明我当前的代码不起作用的东西。任何见解将不胜感激!
表格如下所示:
<div id="note_add_container">
<form id="note_add" method="POST">
<input type="text" name="title" placeholder="title" />
<input type="text" name="summary" placeholder="summary" />
<input type="text" name="details" placeholder="details" />
<button id="submit_note">Add note!</button>
</form>
</div>
<div id="entries">
<!-- AJAX call will populate entries here -->
</div>
这里是 jQuery:
$('#submit_note').click(function () {
var text = $.ajax ({
type: "POST",
url: "note_process.php",
data: $('#note_add').serialize(),
dataType: "json",
async: false,
}).responseText;
$('#entries').html(text);
})
这里是 PHP note_process.php:
include_once "connect.php";
session_start();
$id = $_SESSION['userid'];
$title = $_POST['title'];
$summary = $_POST['summary'];
$details = $_POST['details'];
$query = mysql_query("INSERT INTO notes (id, title, summary, details) VALUES ('$id', '$title','$summary','$details')");
echo $title . $summary . $details;
【问题讨论】:
-
您能解释一下什么不起作用吗?
-
是的,很抱歉不清楚这一点。不起作用的部分是应该从 PHP 中回显的行没有按预期填充在 DIV“条目”中。
-
我猜帖子变量是序列化的。您需要先对其进行 json_decode。
-
使用firebug,检查控制台看数据是否正确发布,如果有,请检查响应。
-
mixdev - 抱歉,我是新手,但如果我使用 json_decode($somedata) 解码,如何将表单中的数据传递到 $somedata?