将一个PHP变量放入HTML表单值中

20
我有一个像这样的PHP变量:$name = $_REQUEST ['name']; 我想把它放在HTML表单字段的值中,例如在这里:<input type="text" name="name" value=(php variable here) /> 我该如何做?
谢谢。
2个回答

45
value="<?php echo htmlspecialchars($name); ?>"

10

你可以像这样做:

<input type="text" name="name" value="<?php echo $name;?>" />

既然您直接从用户输入中获取,那么您需要先对其进行清理以确保页面输出中不会出现任何危险内容。

<input type="text" name="name" value="<?php echo htmlspecialchars($name);?>" />

短标签已被弃用,这开启了一个美妙的XSS世界(因为在问题中提供的代码中,$name 明显被指示为用户生成的内容)。 - Quentin
1
谢谢,我已经注意到清理输入的问题,并在你发表评论时进行了更新。;)尽管我知道短标记已经过时了,但我仍然使用它们,所以按照那种方式输入是自动的。我已经根据你的评论更新了我的答案,删除了短标记。 - Rich Adams
那个没有得到适当清理的。引号仍然被允许,而且你也没有设置字符集。 - user3148596

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接