如何正确转义输入文本中的标签
How to properly escape tags in input text
看起来像普通问题,但找不到正确的解决方案。假设我有这个表格:
<form name="form" action="nextpage.php">
<input type="text" name="input_name" value="<?php echo $_POST['input_name'];?>" />
<input type="submit" name="submit" value="Next"/>
</form>
例如,如果我将 "My input text >" 添加为输入值,则 nextpage.php 将被破坏。
我尝试使用 for:value="<?php echo strip_tags($_POST['input_name']);?>"
或
:value="<?php echo htmlspecialchars($_POST['input_name']);?>"
但其中 none 有效.. 为什么会这样以及如何避免?谢谢
试试这个
<?php
$_POST['input_name']="ddd"; ?>
<form name="form" method="POST" action="nextpage.php">
<input type="text" name="input_name" value="<?php echo $_POST['input_name'];?>" />
<input type="submit" name="submit" value="Next"/>
</form>
并在 nextpage.php
<?php
$name=$_POST['input_name'];
echo $name;
首先,为了安全起见,您应该清理 posted 值,但除此之外,php 提供了一个自动转义称为 addslahes http://php.net/manual/en/function.addslashes.php 的特殊字符的功能,保存您的 post 使用 addslashes 函数将值赋给一个变量,然后使用该变量作为您的值。
试试这个:
<form name="form" action="nextpage.php" method="POST">
<input type="text" name="input_name" value="<?php echo $_REQUEST['input_name'];?>" />
<input type="submit" value="Next"/>
</form>
看起来像普通问题,但找不到正确的解决方案。假设我有这个表格:
<form name="form" action="nextpage.php">
<input type="text" name="input_name" value="<?php echo $_POST['input_name'];?>" />
<input type="submit" name="submit" value="Next"/>
</form>
例如,如果我将 "My input text >" 添加为输入值,则 nextpage.php 将被破坏。
我尝试使用 for:value="<?php echo strip_tags($_POST['input_name']);?>"
或
:value="<?php echo htmlspecialchars($_POST['input_name']);?>"
但其中 none 有效.. 为什么会这样以及如何避免?谢谢
试试这个
<?php
$_POST['input_name']="ddd"; ?>
<form name="form" method="POST" action="nextpage.php">
<input type="text" name="input_name" value="<?php echo $_POST['input_name'];?>" />
<input type="submit" name="submit" value="Next"/>
</form>
并在 nextpage.php
<?php
$name=$_POST['input_name'];
echo $name;
首先,为了安全起见,您应该清理 posted 值,但除此之外,php 提供了一个自动转义称为 addslahes http://php.net/manual/en/function.addslashes.php 的特殊字符的功能,保存您的 post 使用 addslashes 函数将值赋给一个变量,然后使用该变量作为您的值。
试试这个:
<form name="form" action="nextpage.php" method="POST">
<input type="text" name="input_name" value="<?php echo $_REQUEST['input_name'];?>" />
<input type="submit" value="Next"/>
</form>