删除删除数据库行的按钮

时间:2011-05-04 03:33:21

标签: php function

我刚刚制作了一个php函数

function deletebooking($orderID){

    $sql="DELETE FROM bs_reservations WHERE id='".$orderID."'";
    $result=mysql_query($sql) or die("oopsy, error when tryin to delete events 2");

}

我有一个.php文件,它处理提交的表单,然后显示一个HTML页面。如何将添加调用上述功能的删除预订按钮添加到HTML页面。 $ orderID变量已设置。

建议欢迎

4 个答案:

答案 0 :(得分:6)

您可以在单击按钮上使用javascript代码删除记录 如

<input type="button" name-"abc" id="abc" onclick="return Deleteqry(<?php echo $orderID ?>);"/>

现在您可以在<head></head>中将javascript函数编写为

function Deleteqry(id)
{ 
  if(confirm("Are you sure you want to delete this row?")==true)
           window.location="yourpagename.php?del="+id;
    return false;
}

现在,您可以在页面顶部写上

 if($_GET['del'])
   {
    deletebooking($orderID);

   }    

在这里,我们使用javascript警告框...

使用消息警报来确认删除的构造

答案 1 :(得分:3)

两件事。首先,查看“SQL注入”。清理查询输入。

第二:不要这样做。这不是一个好主意。如果页面上已经设置了orderID,那么可能用户可以将其更改为他们想要的任何内容然后删除。相反,您应该将orderID删除与身份验证相关联,或者具有订单ID的状态(例如,“已删除”),以防止丢失任何数据。

除此之外,另一个答案将满足您的需求。这并不复杂。

答案 2 :(得分:2)

这是一个示例页面,我们称之为page.php

<?
    include "includes/dbconnect.php";
    include "includes/functions.php";

    if ($_POST['delete']){
        deletebooking(intval($_POST['delete']));
        echo "deleted!";
        exit;
    }
?>
<form action="page.php" method="post">
<input type="hidden" name="delete" value="<?=intval($orderID)?>" />
<input type="submit" value="Delete order #<?=intval($orderID)?>" />
</form>

一个文件既是您呈现给用户的表单,也是执行实际删除的代码。我们将要删除的记录的ID作为隐藏的表单值传递。

答案 3 :(得分:0)

我还建议在你的函数中添加一个重载,这样在删除操作后id不会留在url中。

$page = 'current.php';

if($_GET['del'])
   {
    deletebooking($orderID,$page);

   }  

function deletebooking($orderID,$page){

    $sql="DELETE FROM bs_reservations WHERE id='".$orderID."'";
    $result=mysql_query($sql) or die("oopsy, error when tryin to delete events 2");
    header('Location: '.$page, true, 303);
}