使用PHP在页面顶部显示验证错误

时间:2012-08-20 18:30:38

标签: php forms validation

我编写了一个Form对象(代码:http://pastebin.com/U1xMRhdn),用于验证在表单字段中输入的信息是否有效。一个例子:

<?php
$f = Form(...);
//I would like to output the amount of errors up here.
$f->textBox(...);
$f->radioArea(...);
if($f->getErrors()>0)
    echo "You have "+$f->getErrors();+" errors, go back and try again";
?>

如果用户未在文本框中输入任何内容,则错误计数器会递增。 问题:我想在页面顶部显示用户出错的错误数量。但是,当我尝试这样做时,错误计数器检索到0错误,因为这些项目尚未在函数textBoxradioArea中进行验证。有没有办法在脚本末尾捕获值并将其返回到脚本的顶部?或者我是否必须找到另一种计算错误的方法?

2 个答案:

答案 0 :(得分:2)

您是否考虑过使用输出缓冲区

像这样:

<?php
ob_start(); // start buffering
$f = Form(...);
//I would like to output the amount of errors up here.
$f->textBox(...);
$f->radioArea(...);
$form_html = ob_get_clean(); // end the buffer, get it, and clean it
if($f->getErrors()>0)
    echo "You have "+$f->getErrors();+" errors, go back and try again";
echo $form_html;
?>

答案 1 :(得分:0)

使用获取数据req并在选择的div处吐回答案。每当用户输入ajax将调用php时,如果有错误,答案就会被激活。如果你希望每次在textarea中都有击键时运行验证,你就可以使用按键