【问题标题】:How should I handle forms in CakePHP?我应该如何在 CakePHP 中处理表单?
【发布时间】:2023-04-01 14:32:02
【问题描述】:

我正在学习 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');

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

已编辑:

我试过这个:

<?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();
?>

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

【问题讨论】:

    标签: cakephp


    【解决方案1】:

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

    你必须在你的第一个代码 sn-p 中使用echo

    echo $this->Form->create("Test");
    echo ...
    

    【讨论】:

      【解决方案2】:

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

      表单数据传递给$this-&gt;request-&gt;data

      【讨论】:

        【解决方案3】:

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

        我看到$form 在那里的表格中被使用,看来您使用的是旧版本的 cakephp(如果 $form 已被 $this-&gt;Form 实例化,那么你很好)

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

        我认为你会选择The Blog tutorial

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-03-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-08-09
          • 2021-03-03
          相关资源
          最近更新 更多