php表单处理输入值发布自我一些字符错误

时间:2015-09-17 14:04:10

标签: php forms

我将数据发布到表单操作到php自己一些字符出错。如果您将"输入名称返回\如何解决,则此字符为"\

<form id="form1" name="form1" method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
  <label for="name"></label>
  <input name="name" type="text" id="name" value='<? print htmlspecialchars($_POST['name']); ?>' />
  <br />
  <input type="submit" name="button" id="button" value="Submit" />
  <? print htmlspecialchars($_POST['name']); ?>
</form>

1 个答案:

答案 0 :(得分:1)

我不确定问题是什么,但我认为在将特殊字符返回到输入字段时会出现错误。如果是这样,请尝试:http://php.net/manual/en/function.htmlentities.php您需要将特殊字符转换为html实体,这样数据就不会被读作代码而导致问题。 我刚刚通过将message input更改为<?php echo htmlentities($_POST['name']); ?>来测试了这一点,并且字符正常显示。 使用此代码:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
    </head>
    <body>
        <form id="form1" name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
            <label for="name"></label>
            <input name="name" type="text" id="name" value="<?php echo htmlentities($_POST['name']); ?>" />
            <br />
            <label for="message"></label>
            <textarea name="message" id="message" cols="45" rows="5"><?php echo $message; ?></textarea>
            <br />
            <input type="submit" name="button" id="button" value="Submit" />
        </form>
        echoed (<?php echo htmlentities($_POST['name']); ?>);
    </body>
</html>