带位置的HTTP标头不是URL的ID

时间:2011-09-13 03:02:15

标签: php header location

我使用“标题位置”时遇到问题,下面是代码:

case 'update':
        updateUser($_GET['ticket_id']);
        header('Location: ../ticket/listOfTicket.php?ticket_id='.$_GET['ticket_id'].'');
        exit;
        break;

我正在使用case因为我想要更新到数据库中。我相信这里的问题是:

header('Location: ../ticket/listOfTicket.php?ticket_id='.$_GET['ticket_id'].'');

我不知道在哪里放置引用'"。它将在URL中输出如下:

http://localhost/ticket/listOfTicket.php?ticket_id=

它没有显示ticket_id。为什么呢?

1 个答案:

答案 0 :(得分:1)

您应始终清理您的用户输入。我可以很容易地将你不期望的东西传递给$ _GET ['ticket_id']。假设ticket_id是一个整数,当我访问该页面并将ticket_id设置为某个值时,这适用于我。

header( 'Location: ../ticket/listOfTicket.php?ticket_id=' . intval( $_GET['ticket_id']));
exit;