使用按钮删除sql行而不刷新页面

时间:2014-10-20 14:28:47

标签: javascript php jquery mysql ajax

我想删除带有删除按钮的表格中的一行,但是在jQuery ajax的帮助下没有页面刷新。

我对php,html,javascript,jquery和sql有一点了解。我不知道该怎么做但我真正想做的是能够从sql表中提取数据(我已经知道如何做到这一点)。

然后用旁边的按钮显示数据(我也知道该怎么做)。当他们单击按钮时,它将删除保存可见数据的元素,并发送sql语句以删除数据库中的行。一个非常粗略的代码视图。

<?php
echo '<p>Data 1: '".$someDataFromDB."'<button id='deleteThisRow'></button></p>;
?>

从此我想:

  1. 点击按钮
  2. 删除段落元素,以便用户知道它已被删除
  3. 然后发送一个sql语句来删除sql表中的行
  4. 这一切都没有刷新页面。那可能吗?

1 个答案:

答案 0 :(得分:3)

是的,但是你应该只将条目的id发送到特定页面以删除条目。只要整个sql语句。

<button id="<?php echo $row['id']; ?>" class="delbutton"></button>

将此脚本添加到您的页面

<script type="text/javascript" >
        $(function() {

            $(".delbutton").click(function() {
                var del_id = $(this).attr("id");
                var info = 'id=' + del_id;
                if (confirm("Sure you want to delete this post? This cannot be undone later.")) {
                    $.ajax({
                        type : "POST",
                        url : "delete_entry.php", //URL to the delete php script
                        data : info,
                        success : function() {
                        }
                    });
                    $(this).parents(".record").animate("fast").animate({
                        opacity : "hide"
                    }, "slow");
                }
                return false;
            });
        });
 </script>

并且最后但至少是你的删除脚本

<?php
include 'connection.php';
$id=$_POST['id'];
$delete = "DELETE FROM table WHERE id=$id";
$result = mysql_query($delete) or die(mysql_error());
?>