1

我正在学习 CakePHP。我读了一本 CakePHP 书和网络教程,但我仍然没有得到一些基本的东西:

我看到人们总是在 View 中使用$form->create. 我可以像平常一样使用 HTML 表单,还是必须像人们一样使用 HTML 表单?

当使用以下代码在 login.ctp 中创建表单时:

echo $form->create('User', array('method' => 'POST', 'action' => 'login'));     
echo $form->input('email');
echo $form->input('password');
echo $form->input(array('type' => 'submit'));
echo $form->end('Login');

当我点击提交按钮时,数据是否会传递给login()Controller类中的函数?

编辑:

我试过这个:

<?php
$this->Form->create("Test");
$this->Form->input("stuId",array('class'=>'inputField', 'placeholder'=>'SVxxxxxxxx'));
$this->Form->input("stuName",array('class'=>'inputField', 'name'=>'stuName'));
$this->Form->end();
?>

但它什么也没显示?问题是什么 :(

4

3 回答 3

3

但它什么也没显示?问题是什么 :(

你必须echo在你的第一个代码片段中使用:

echo $this->Form->create("Test");
echo ...
于 2013-03-20T06:08:01.863 回答
1

您可以将 HTML 用于任何您想要的东西,但是您将失去 CakePHP 框架的一大优势。Cake HTML 和表单助手帮助您的代码适应未来。您还将受益于 Cake 在 Web 编码方面实施的最佳实践。我完全推荐使用这些助手。

表单数据被传递给$this->request->data.

于 2013-03-20T02:52:09.730 回答
1

是的,参数将传递给login方法。

我看到$form在那里以表格形式使用,看来您使用的是旧版本的 cakephp(如果$form已实例化,$this->Form那么您就可以了)

FormHelper 为我们做了很多工作automagic,它还为我们提供了增加安全性的方法。

我想你会去博客教程

于 2013-03-20T02:56:41.920 回答