2011-12-03 38 views
1

我有一個返回$this->data的表單助手保持爲空的問題。在我的表格之前沒有問題,我無法弄清楚這裏有什麼不同。 對於此表單,不存在包含數據的模型,它只是用於執行搜索的用戶輸入。

這是我的看法:

<?php 
echo $this->Form->create(); 
echo $this->Form->input('Postleitzahl'); 
$options=array('10'=>10,'20'=>20); 
echo $this->Form->input('Entfernung',array('type'=> 'select' , 'options'=>array(($options)))); 
echo $this->Form->end('Suchen'); 
?> 
+0

也可以執行'debug($ this-> data)'來確定你的動作 – Ross

+0

也許你可以直接從$ this-> params使用它? – Henri

回答

2
<?php 

    echo $this->Form->create(null, array('type' => 'post')); # not sure if that's needed 
    echo $this->Form->input('Search.Postleitzahl'); 
    $options=array('10'=>10,'20'=>20); 
    echo $this->Form->input('Search.Entfernung',array('options'=> $options)); # seems shorter and should work 
    echo $this->Form->end('Suchen'); 

?> 

以上應導致到含有類似以下內容的$this->data數組:

['Search'] 
    ['Postleitzahl']: 102929 
    ['Enfernung']: 'foobar' 
1

只是不要雙數組你的數組:

'options'=>$options 
+0

改變了......但仍然是相同的..問題,也許這是因爲它不代表數據庫中的模型,我必須聲明輸入變量? – Tolga

+1

應該總是有一些模型。要麼使用「假」模型名稱,如「表單」以便在控制器中使用發佈的數據 - 或者甚至更好地使用帶有$ useTable = false的真實模型(這樣,您可以在不使用任何實際表格的情況下對錶單進行驗證)。 – mark

0

不一定與Cake相關,但是當我擁有它時,問題的答案是:如果您在POST中包含文件上傳,請仔細檢查您上傳的文件是否不大於您的文件中指定的限制php.ini文件。