如何隐藏历史记录中的php动作?

时间:2011-03-10 11:50:32

标签: php http-headers

是否可以告诉浏览器他不应该记住动作脚本页面?

所以当您删除标题时,例如。 get动作将是?d = ID,其中ID是标题的id。删除标题后,转到页面中没有get变量的页面(标题部分)。

<?php
if(isset($_GET['d']) && preg_match('{^[0-9]{1,3}$}',$_GET['d'])){
    $hid = $_GET['d'];
    $deletesql = "DELETE FROM headlines WHERE hid = $hid";
    mysql_query($deletesql);
    header('Location: panel.php');} ?>

但现在您的浏览器历史记录显示链接panel.php?d = 23 可以阻止浏览器记住页面吗?也许303头?

2 个答案:

答案 0 :(得分:4)

你应该使用POST而不是GET。这样,浏览器将提示用户是否要再次发送信息。 (通常是id参数)

答案 1 :(得分:1)

将ID隐藏在表单中,然后使用$ _POST在表单操作部分中获取它,然后执行删除操作并在删除成功后重定向,以避免用户重新发布表单。