从数据库中删除记录

时间:2013-03-31 15:24:17

标签: php sql record

我有一个PHP页面,当您尝试删除记录时,它会重定向到另一个页面, 但不是删除它只是刷新的记录。

我从前一个PHP页面获得order_id ...

<?php
session_start();
include("confing/db.php");
include("confing/funtion.php");
require_once('stas/config.php');
if(isset($_SESSION['idart23'])){
$idses = ($_SESSION['idart23']);
$uesrnameses = ($_SESSION['username']);
$passwordses = ($_SESSION['password']);
$query = mysql_query("SELECT * FROM `admins` WHERE username='".$uesrnameses."'  AND id='".$idses."'");  
if($rowadmin = mysql_fetch_array($query)) {

    }else{
        die(header("Location: login.php"));
    }
}else{
        die(header("Location: login.php"));
}
$order_id=$_GET['ID']; 
header("Location: orders.php");
if (isset($order_id)) { 
$query = mysql_query("DELETE FROM `orders` WHERE `ID`='$order_id'  ");  
$time = date("d/m/Y , h:i:s");
$act = "מחיקת עמוד";
$nameadmin = $rowadmin['firstname'];


mysql_query("INSERT INTO `logs` ( `time` , `act` , `admin`) VALUES ('$time' , '$act' , '$nameadmin') ;")  or die ("$error[errorcoontodb]");

}else{ exit('\$order_id isnt set!'); }

?> 

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

请注意第二行的重定向?

$order_id=$_GET['ID']; 
header("Location: orders.php");
if (isset($order_id)) { 
$query = mysql_query("DELETE FROM `orders` WHERE `ID`='$order_id'  ");  
$time = date("d/m/Y , h:i:s");
$act = "מחיקת עמוד";
$nameadmin = $rowadmin['firstname'];


mysql_query("INSERT INTO `logs` ( `time` , `act` , `admin`) VALUES ('$time' , '$act' , '$nameadmin') ;")  or die ("$error[errorcoontodb]");

}else{ exit('\$order_id isnt set!'); }

您重定向到orders.php而不是留在当前页面上。但是,由于您不会exit脚本的其余部分仍然运行,因此如果设置了$_GET['ID'],则应插入记录。但是,如果您说记录不是插入,那么$_GET['ID'] 可能不会设置,这样您就会得到输出$order_id isnt set! - 除非您在此之前重定向,否则您永远不会看到它(如果查询失败,情况也是如此)。

删除header,并且应该出现一条解释问题的错误消息。

答案 1 :(得分:0)

$order_id=$_GET['ID']; 
header("Location: orders.php");
if (isset($order_id)) { 
$query = mysql_query("DELETE FROM `orders` WHERE `ID`='$order_id'  ");  
$time = date("d/m/Y , h:i:s");
$act = "מחיקת עמוד";
$nameadmin = $rowadmin['firstname'];


mysql_query("INSERT INTO `logs` ( `time` , `act` , `admin`) VALUES ('$time' , '$act' , '$nameadmin') ;")  or die ("$error[errorcoontodb]");

}

请评论专栏header("Location: orders.php");

调试任何错误消息的代码。 请在执行查询后放置header("Location: orders.php");,推荐练习将在重定向后退出代码。 header("Location: orders.php"); exit;