如何在cakephp中获取提交的数据?
我有一个表单来获取用户对表单最感兴趣的书籍,该表单包含每个类别的选项卡,每个选项卡包含多个复选框,以便用户可以检查他喜欢的书籍的名称。这里的问题是,我无法获取包含书籍名称的复选框的值 查看如何在cakephp中获取提交的数据?,cakephp,cakephp-2.0,Cakephp,Cakephp 2.0,我有一个表单来获取用户对表单最感兴趣的书籍,该表单包含每个类别的选项卡,每个选项卡包含多个复选框,以便用户可以检查他喜欢的书籍的名称。这里的问题是,我无法获取包含书籍名称的复选框的值 查看 <? echo $this->Form->create('Book', array('id'=>'booksform', 'url'=>array('action' => 'your_bo
<? echo $this->Form->create('Book', array('id'=>'booksform',
'url'=>array('action' => 'your_books'))); ?>
<div id="tabs-1">
<? echo $this->Form-> input('books',array('type' => 'select',
'multiple' => 'checkbox',
'name' => 'books',
'options' => $biographies,
'label'=>false));?>
</div>
<div id="tabs-2">
<? echo $this->Form-> input('books',array('type' => 'select',
'multiple' => 'checkbox',
'name' => 'books',
'options' => $history,
'label'=>false));?>
</div>
<? echo $this->Form->end(); ?>
<? echo $this->Form->submit(__('Submit'),array('class'=>'btn btn-primary','div'=>false)); ?>
这是:
$books = $this->request->data['Book']['books'];
您的表单应该如下所示:
<? echo $this->Form->create('Book', array('id'=>'booksform',
'url'=>array('action' => 'your_books'))); ?>
<div id="tabs-1">
<?
$biographies = array('1'=>'a','2'=>'b');
echo $this->Form-> input('books',array('type' => 'select',
'multiple' => 'checkbox',
'name' => 'books',
'options' => $biographies,
'label'=>false));?>
</div>
<div id="tabs-2">
<? $history = array('3'=>'c','4'=>'d');
echo $this->Form-> input('books',array('type' => 'select',
'multiple' => 'checkbox',
'name' => 'books',
'options' => $history,
'label'=>false));?>
</div>
<?
echo $this->Form->submit(__('Submit'),array('class'=>'btn btn-primary','div'=>false));
echo $this->Form->end(); ?>
此处在字段名中传递了“multiple”参数,因此其值存储为数组格式
Sp提交后,按下面的代码返回所有逗号分隔的复选框id
<?php echo implode($this->request->data['books'],','); ?>
是否需要这两个div和
因为我认为您的HTML应该足够灵活,可以在一个div下容纳所有的复选框。如果您尝试这样做,我向您保证您的问题将得到解决 在选择了一些书之后,$this->request->data中有什么内容?即使在提交了表单之后,我也没有得到任何(“”)?两件事:你不应该在一个表单中有两个同名的输入(
books
和books
),你应该在end
方法之前调用submit
方法,因为在您的情况下,您没有提交任何内容(这可能是导致您出现问题的原因)。
<?php echo implode($this->request->data['books'],','); ?>