2010-03-19 102 views
0

我創建了多個具有相同名稱的複選框,並且我需要知道在提交表單時如何獲取數組的值?我使用CakePHPCakePHP中具有相同名稱的多個複選框

<?php 
e($form->create('Report', array('action' => 'add'))); 
for ($i = 0; $i < count($data); $i++) { 
    ?> 
    <div class="left"><?php echo $data[$i]['ReportTitle']['title'] ?></div> 
    <div class="left" style="width:500px;">&nbsp;</div> 
    <?php 
    for ($j = 0; $j < count($data[$i]['ReportStatement']); $j++) { 
     ?><div class="left" style="width:50px; margin-left:50px; float:left;"><input type="checkbox" name="Report" value="<?php echo $data[$i]['ReportStatement'][$j]['id'] ?>" id="Report" /></div><div class="right" style=" width:600px; float:left;"><?php echo $data[$i]['ReportStatement'][$j]['statement'] ?></div> 
     <?php 
    } 
} 
?> 

回答

0

是的,你可以創建任何元素(文本框,複選框...)具有相同的名稱,爲此,你必須創建elelment的數組。 cakephp給出了更好的方法來做到這一點,

例如, $ form-> checkbox('Model.0.fieldname,array()); $ form-> checkbox('Model.1.fieldname,array()); $ form-> checkbox('Model.2.fieldname,array()); &等......

您可以創建任意數量的元素。作爲輸出它會給你'字段名'的數組

請檢查了這一點,我在我的項目中使用這種類型的複選框。

0

我還沒有使用CakePHP,因此我不知道它是代碼風格,但是您的HTML中使用相同的ID實際上不應該包含多個對象。 CookBook可能會幫助你。

相關問題