它处理Web应用程序中表单的创建和维护。现在, 在添加注册表单之前, 我们已经设计了一个基本的Web应用程序。
设计注册表单
更改index.phtml视图文件, 将注册页面链接添加为控制器。
app / views / index / index.phtml
<
?phpecho "<
h1>
Hello!<
/h1>
";
echo PHP_EOL;
echo PHP_EOL;
echo $this->
tag->
linkTo("signup", "Sign Up Here!");
输出
文章图片
现在, 我们编写注册控制器
app / controllers / SignupController.php
<
?phpuse Phalcon\Mvc\Controller;
class SignupController extends Controller{public function indexAction() {}}?>
初始化表格
在此表单中, 我们提供了表单定义, 即提供了表单的结构。
app / views / signup / index.phtml
<
h2>
Sign up using this form<
/h2>
<
?php echo $this->
tag->
form("signup/register");
?>
<
p>
<
label for="name">
Name<
/label>
<
?php echo $this->
tag->
textField("name");
?>
<
/p>
<
p>
<
label for="email">
E-Mail<
/label>
<
?php echo $this->
tag->
textField("email");
?>
<
/p>
<
p>
<
?php echo $this->
tag->
submitButton("Register");
?>
<
/p>
<
/form>
输出
文章图片
验证表格
Phalcon表单与验证组件集成在一起, 可提供即时验证。
<
?phpuse Phalcon\Forms\Element\Text;
use Phalcon\Validation\Validator\PresenceOf;
use Phalcon\Validation\Validator\StringLength;
$name = new Text('name');
$name->
addValidator(new PresenceOf(['message' =>
'The name is required', ]));
$email = new Text('email');
$name->
addValidator(new PresenceOf(['message' =>
'The email is required', ]));
$form->
add($name);
$form->
add($email);
?>
表单元素 【Phalcon表单用法例子】Phalcon提供了一组内置元素供你在表单中使用。所有这些元素都位于Phalcon \ Forms \ Element中。
Name | Description |
---|---|
Phalcon\Forms\Element\Text | 生成INPUT [type = text]元素 |
Phalcon\Forms\Element\Password | 生成INPUT [type = password]元素 |
Phalcon\Forms\Element\Select | 根据选择生成SELECT标签(组合列表)元素 |
Phalcon\Forms\Element\Check | 生成INPUT [type = check]元素 |
Phalcon\Forms\Element\TextArea | 生成TEXTAREA元素 |
Phalcon\Forms\Element\Hidden | 生成INPUT [type = hidden]元素 |
Phalcon\Forms\Element\File | 生成INPUT [type = file]元素 |
Phalcon\Forms\Element\Date | 生成INPUT [type = date]元素 |
Phalcon\Forms\Element\Numeric | 生成INPUT [type = number]个元素 |
Phalcon\Forms\Element\Submit | 生成INPUT [type = submit]元素 |
推荐阅读
- Phalcon第一个例子
- Phalcon Cookie管理
- 跨站请求伪造(CSRF)保护
- Phalcon连接到数据库
- Phalcon配置详解
- Perl While循环
- Android测试(Espresso 自动化测试)
- Android测试(Instrumented 单元测试)
- Android测试(Local 单元测试)