在表单处理错误时使用PHP将表单输入值写回html输入

在表单处理错误时使用PHP将表单输入值写回html输入,php,Php,我正在用PHP处理一个HTML表单。如果出现错误(例如字符串太短),我会将该字符串写回html输入中的value属性。推荐的方法是什么 表格输入为: <input type="text" name="firstname"> PHP脚本是: $variable_firstname = filter_input (INPUT_POST, 'firstname', FILTER_UNSAFE_RAW); if ( mb_strlen($variable_firstname , 'UT

我正在用PHP处理一个HTML表单。如果出现错误(例如字符串太短),我会将该字符串写回html输入中的value属性。推荐的方法是什么

表格输入为:

<input type="text" name="firstname">

PHP脚本是:

$variable_firstname = filter_input (INPUT_POST, 'firstname', FILTER_UNSAFE_RAW);
if ( mb_strlen($variable_firstname , 'UTF-8')  <  3 )
{
   print '<input type="text" name="firstname" value="'.$variable_firstname.'">';
}
$variable\u firstname=filter\u输入(输入后,'firstname',filter\u RAW);
如果(mb_strlen($variable_firstname,'UTF-8')<3)
{
打印“”;
}
我应该在打印前使用htmlspecialchars()转换字符串吗


谢谢

是的,否则您将受到XSS攻击。不过,目前最常用的方法是使用Ajax。然后,您根本不需要离开页面,也不需要再次生成表单或值。它还能带来更流畅的用户体验。是的。您可以在中获得更多信息