0

当用户单击退出时如何删除表记录,退出它只是一个链接,它不会在会话中调用,有没有办法做到这一点。用户单击退出链接时删除该特定表的记录。我在会话中没有这个,但我不知道没有会话我怎么能做到这一点。会话调用编码

<?php
session_start();
if(session_destroy())
{
header("Location: index.php");
}
?>
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("ems" , $con);
$r="delete from ga2";
$result=mysql_query($r) or die (mysql_error());
?>

当用户单击退出链接时,如何在没有会话的情况下删除上表。

4

2 回答 2

1

delete from ga2将从中删除所有记录ga2 table。为了防止这种情况,在登录商店id用户sessionga2 table. 然后在注销时,您可以执行以下操作来删除记录:

<?php
session_start();
if(isset($_SESSION['user_id'])) {
    $user_id = (int) $_SESSION['user_id'];
    $con = mysql_connect("localhost","root","") or die('Could not connect: ' . mysql_error());
    mysql_select_db("ems" , $con) or die('Could select database: ' . mysql_error());
    $r = "delete from ga2 WHERE user_id = $user_id";
    mysql_query($r) or die (mysql_error());
    session_destroy();
}

header("Location: index.php");
?>
于 2013-07-20T08:50:50.840 回答
0

为每个用户创建一个单独的表是一种非常糟糕的编码方法。相反,每个用户只有一张表,表中有一行。正如#manoj-yadav 建议的那样,在注销时删除该行。给您和#manoj-yadav 的注释:请使用 mysqli 而不是 mysql api,因为不推荐使用 mysql api。php.net 说“此扩展自 PHP 5.5.0 起已弃用,将来将被删除。”

于 2013-07-20T08:59:37.590 回答