我正在使用Jquery中的$.ajax将数据发布到PHP页面。到目前为止,一切都很顺利。
以下是我的index.html.中的所有内容
function send() {
$( "#send" ).show( "slow" );
var page = Page;
var title = $("#title").text();
var title_2 = $("#title_2").val();
$.ajax({
url: "save.php",
method: "POST",
data: { MyPage : page, My_Title1 : title, My_Title2 : title_2 },
dataType: 'json',
success: function(data) {
alert(data);
var result = jQuery.parseJSON(data);
alert(result.last_id);
},
error: function(output) {
alert("not working whole process");
}
});
总结一下我正在做的事情,就是将一些数据(Html和div中的内容)发送到sql数据库。
我现在想做的是,一旦这些数据被发布到save.php文件,我就会收到php的响应,向我发送我保存了所有这些的页面的ID。所以我使用mysqli_insert_id($con);
来实现这一点。
设置它看起来像这样。
$last_id = mysqli_insert_id($con);
当我执行所有这些时,Post运行良好,我最终得到了我想要的。{"last-id":265}在我的帖子末尾。
$data['last id'] = $last_id;
echo json_encode($data);
如何将此值返回到index.html,以便将其放置在输入中。成功没有成功。
//回复Stevens的答案
@史蒂夫。谢谢你的回答。你的答案正是正在发生的事情。我正在向save.php文件发送一大堆html,以便它可以将其保存到sql表中。像这样的东西。
Write to MySQL OK!<br>INSERT INTO Project(ID_User,Name_Project,Page_Project,Date_Project) VALUES ( 110, ''"Project name here'"', '<div class='"file_save_container'"> <------------- HERE THERE IS A WHOLE BUNCH OF HTML ------------> </div>'n'n'n', '2015-03-19 13:10:23');<br>
这一切都正确地保存到了我的sql表中。我想在这里实现的是,当ajax被发送到我的save.php时,我会收到一个响应,向我发送新创建的项目的id,这样我就可以将响应"id"放在中。现在mysqli_insert_id将把这个放在我文章的末尾。
<br>{"this_id":"311"}
这是我想得到的对index.html文件的回应,而不是在我的帖子末尾。
尝试在save.php 中设置header('Content-Type: application/json');
编写$data['last_id']
而不是$data['last id']
以匹配JS。