gpt4 book ai didi

cakephp 2.x 带有模型但没有数据库的表单验证

转载 作者:行者123 更新时间:2023-12-02 21:04:15 25 4
gpt4 key购买 nike

我对 cakephp 很陌生,我试图验证联系表单。我需要在模型中没有数据库表的情况下进行验证。但它不起作用。我使用的代码如下所示

以下是代码:ContactsController.php

<?php
class ContactsController extends AppController {


var $uses='Contact';

public function index() {
// Placeholder for index. No actual action here, everything is submitted to the send function.
}

public function send() {
$this->Contact->set($this->data);
if($this->Contact->validates()) {
echo "hiiii";
}
}




}
----------------------------Model-----------------------
<?php
App::uses('AppModel', 'Model');

class ContactModel extends AppModel {

var $name = 'Contact';
var $useTable = false;

var $validate = array(
'name' => array(
'rule' => 'notEmpty',
'required' => true
),
'email' => array(
'rule' => 'email',
'required' => true
),
'message' => array(
'rule' => 'notEmpty',
'required' => true
)
);
}
-----------------------in view/Contacts/index.ctp-----------------------------
<?php
echo $this->Form->create('Contact', array('action' => 'Contacts/send'));
echo $this->Form->input('name');
echo $this->Form->input('email');
echo $this->Form->input('message',array('rows' => 3));
echo $this->Form->submit('Submit');
?>

最佳答案

有一种不使用模型进行验证的方法,它也可以用于表单,至少在 CakePHP2 中是这样。

例如,我必须验证参数,并且我认为为每个需要参数的操作创建模型没有意义。

所以,我用了这个:

  1. Controller 类声明之前

    App::uses('验证', '实用程序');

  2. 在带有 $code 参数的操作中

    函数检查码($code) { ... 验证::alphaNumeric($code); ...}

关于cakephp 2.x 带有模型但没有数据库的表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12258862/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com