因此,我一直听到并读到,如果要将任何用户输入输出回 html,则需要对其进行清理。我想知道的是,如果出现错误,我是否需要清理输出的任何输入?
例如,在我的表单错误处理中,我有它,因此页面会重新显示,并显示错误消息并告诉用户出了什么问题,而且还将他们的输入作为表单的值输出,这样他们就不必重新输入它,他们可以看到他们哪里出错了。我的问题是当它的输出作为表单字段的值时,我是否需要使用 htmlspecialchars() 来清理用户的输入?
这是我的一个输入字段现在的样子。
<label for="email">E-mail Address: <?php if($btnPressed) { checkInput($_POST['email'], true, true); } // Check the validity of the input ?></label>
<input type="text" name="email" id="email" value="<?php if($btnPressed) { echo $_POST['email']; } // Output the user's input if an error occurred ?>" maxlength="50" />
这是我认为我应该做的。
<label for="email">E-mail Address: <?php if($btnPressed) { checkInput($_POST['email'], true, true); } // Check the validity of the input ?></label>
<input type="text" name="email" id="email" value="<?php if($btnPressed) { echo htmlspecialchars($_POST['email']); } // Output the user's input if an error occurred ?>" maxlength="50" />
任何帮助是极大的赞赏。