结合header和htmlspecialchars

时间:2016-08-30 17:40:50

标签: php

我有以下两个片段:

<?php header('Location: example.com/login.php?name='); ?>

<?php echo 'Hello' . htmlspecialchars($_GET["name"]) . ', welcome'; ?>

我想在= example.com/login.php?name=之后添加htmlspecialchars编码的名称,但是当我尝试这样做时,它没有用。

我该怎么做?

2 个答案:

答案 0 :(得分:0)

再试一次 - 使用双引号

<?php header("Location: example.com/login.php?name=htmlspecialchars($_GET['name'])"); ?>

答案 1 :(得分:0)

您可以使用字符串连接;在PHP中,您可以将两个字符串组合在一起(连接字符串)和句点(.

<?php
header('Location: http://www.example.com/login.php?name=' 
           . htmlspecialchars($_GET['name']));
exit();

您将看到的其他一些更改:

  • 我设置了Location标头后添加了一个明确的exit()调用;这将导致重定向发生而不执行任何更多的代码,这通常是不可取的。
  • 我在位置添加了一个协议(http,https)。

假设$_GET['name'] = 'Mary';,这会将用户重定向到

http://www.example.com/login.php?name=Mary