您好我正在尝试使用JS和AJAX动态删除数据库条目而不刷新整个页面。 这是我的data.php文件:
<?php
require_once('db.php');
if (isset($_GET['list'])) {
$query = "SELECT * FROM message";
mysql_query("SET NAMES 'UTF8'");
$qq=mysql_query($query);
$i = 1;
echo '<div id="rezult">';
while($ff = mysql_fetch_array($qq)){
echo '<div id="id'.$ff['id'].'">'.$i++.'. Name: '.$ff['name'].' Message:'.$ff['message'].'</div>';
}
echo '</div>';
}
?>
使用此代码我正在从mysql表中检索数据:
的index.php
function list() {
$.get('data.php?list=1', function(o) {
$('#list').html(o);
});
}
如何在不刷新页面的情况下动态删除所需的条目?
我试图在下面添加此代码作为条目的链接,但它会像这样被剪切javascript:$.post(
。
<a href="javascript:$.post('delete_post.php', { id: '$ff[id]' } );" class='delete_post' title='delete post'>delete post</a>
感谢您的建议
答案 0 :(得分:0)
小心!如果有人打电话给你的php文件data.php?list = ANYNUMBER他将能够删除任何行,请确保你使用安全工具来避免这种情况。如果你使用{{3}我认为这会更容易。
尝试这样的事情:
$.ajax({
type: "POST",
url: "list.php",
data: { list: "1", session_id: session_ID }
}).done(function( msg ) {
alert( "Data deleted: " + msg );
});
其中session_id是字段的值(在您的示例中为1),session_id是当有人转到您的页面时为其分配SESSION_ID,在他单击删除按钮后,您比较您分配的会话ID是否为等于来自服务器的session_id(你可以避免来自其他站点的人调用你的list.php)。如果来自ajax的session_id等于服务器上的session session_id允许删除,请查看:ajax and Jquery