Php 如何插入多条记录

Php 如何插入多条记录,php,sql,cakephp-2.0,Php,Sql,Cakephp 2.0,我是一名新的cake php开发人员。我正在尝试插入多条记录,但我做不到。我的表结构如下所示: 表名: 代理人 型号代码为: <?php App::uses('AppModel', 'Model'); /** * Admin Login Model * */ class Agent extends AppModel { public $name='Agent'; public $usetables='agents'; public $validate =

我是一名新的cake php开发人员。我正在尝试插入多条记录,但我做不到。我的表结构如下所示: 表名: 代理人

型号代码为:

<?php
App::uses('AppModel', 'Model');
/**
 * Admin Login Model
 *
 */
 class Agent extends AppModel
 {
    public $name='Agent';
    public $usetables='agents';

    public $validate = array(

    'contact' => array(
    'contact_not_empty' => array(
        'rule' => 'notEmpty',
        'message' => 'Please Give Contact No',
        'last' => true
        ),
    ),

      'name' =>array(
      'rule' => 'notEmpty', // or: array('ruleName', 'param1', 'param2' ...)
      'allowEmpty' => false,
      'message'    => 'Please Enter Name.'
    ),

    'email_add' => array(
            'email_add' => array(
            'rule' => 'email',
            'allowEmpty' => true,
            'message' => 'Please Enter Valid Email',
            'last' => true
    )),



    );

 }

无法使用此代码插入记录。我应该怎么做?

在查询中尝试使用此saveall(),保存除外,希望这有帮助

 if($this->Agent->saveall($this->data))

让我知道它是否有效。

让我解释一切

首先,您的html表单必须如下所示

<?php echo $this->Form->create('User'); ?>
<tr>
    <td>
        <?php
            echo $this->Form->input('User.0.address',array
            (
                'div'   => null,
                'label' => false,
                'class' => 'span required'
            ));
        ?>

        <?php
            echo $this->Form->input('User.1.address',array
            (
                'div'   => null,
                'label' => false,
                'class' => 'span required'
            ));
        ?>

        <?php
            echo $this->Form->input('User.2.address',array
            (
                'div'   => null,
                'label' => false,
                'class' => 'span required'
            ));
        ?>
    </td>
    <td>
        <input type="submit" value="Add" >
    </td>
</tr>
<?php echo $this->Form->end(); ?>
是的,在这里您可以同时保存多个记录

我刚刚介绍了cakephp的工作原理,您需要做的就是根据需要设置上面的提示。

祝你好运

干杯

请随便问……:)

我认为

php echo $this->Form->create('Agents', array('action' => 'send_money'));?>
应替换为

php echo $this->Form->create('Agent', array('action' => 'send_money'));?>

使用saveall()代替save。

我以前试过。它只插入了最后一条记录。它不起作用了很多。它起作用了,现在我可以插入多个reord。但是我的字段验证模型代码不起作用。你能告诉我验证模型代码是什么吗?…试试$this->User->saveall($this->data['User'],array('validate'=>'only');$this->Agent->saveAll($this->data['Agent'],数组('validate'=>'only'));我尝试了这段代码,但它不起作用。我只想根据我的模型验证我的字段…不起作用。??但根据我个人使用cake的经验,如果验证在模型中定义得很好,这并不需要。。cake自动验证多个同名字段。。所以请查看模型代码。。我是一名新的cake php开发人员。上面给出的是我的模型代码。我无法找到我的mopdel中的错误。你能帮我检查一下我的模型吗?我只有一个名为agents的表。我想在这个表中一次保存两次记录。我该怎么办?
<?php
    function add()
    {
        $this->User->saveAll($this->data['User']);
    }
php echo $this->Form->create('Agents', array('action' => 'send_money'));?>
php echo $this->Form->create('Agent', array('action' => 'send_money'));?>