我需要一些针对我的ajax问题的解决方法/解决方案
我有这个简单的<html>
<textarea class="msg"></textarea>
<button type="button" class="submit">Submit</button>
<div class="messages">
<?php some php while loop here to display all submitted messages?>
</div>
当我点击提交时,此ajax获取<textarea>
的值并将数据提交到messages.php
$(function() {
$(document).on('click','.submit', function () {
var msg = $('.msg').val();
$.ajax({
type:"POST",
url:"messages.php",
data: "msg=" + msg,
success: function(html) {
$(html).prependTo('.messages');
}
});
});
});
这是我的messages.php
//insert into database
$msg= $_POST['msg'];
$db = dbConnect();
$insert= "INSERT INTO messages (content)values ('$msg')";
$db->query($insert);
//get the recently added message and echo it
$query = //select the ID of the added message
$result = $db->($query);
$row = $result->fetch_assoc());
echo $row['id'];
echo $row['content'];
我正在努力的部分是如何在将消息插入数据库后立即提交query
消息,因此我可以在php中回显它,并通过ajax获取它。
success: function(html) {
$(html).prependTo('.messages');
}
我知道我需要一些提交邮件的唯一标识符,但我不确定如何正确编码。
编辑:
好的,我需要查询添加的条目的原因是获取该条目的关联ID,因为我将使用该ID用于其他功能。我真正需要的是对我提交的数据的引用
答案 0 :(得分:2)
$id = $db->insert_id;
$query = "SELECT * FROM messages WHERE id = $id";
$result = $db->query($query);
$row = $result->fetch_assoc();
echo $row['id'];
echo $row['content'];
答案 1 :(得分:-1)
使用最后插入的id函数,如果你插入两个不同的表并输入相同的行值,它也可以帮助
//insert query in this line
$lastid=mysqli_insert_id()//php function
$que = mysqli_query("SELECT * FROM table where id= '$lastid' ");
$r = mysql_fetch_array($que);
echo $r['id'];
希望这有帮助