2011-12-03 4 views
1

$this->data이 비어있는 양식 도우미에 문제가 있습니다. 이전에는 제 폼에서 아무런 문제가 없었으며 여기서 어떤 차이점이 있는지 파악할 수 없었습니다. 이 양식에는 데이터를 포함하는 모델이 없으며 검색을 수행하기위한 사용자 입력 만 가능합니다. 그냥하지 double 배열을 배열 할

<?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

항상 모델이 있어야합니다. 컨트롤러에 게시 된 데이터를 사용하려면 "Form"과 같은 "가짜"모델 이름을 사용하거나 실제 테이블을 사용하지 않고 양식에 대한 유효성을 검사 할 수있는 $ useTable = false로 실제 모델을 사용하는 것이 좋습니다). – mark

0

Cake와 반드시 관련이있는 것은 아니지만 문제가 생겼을 때의 답 : POST에 파일 업로드를 포함하는 경우 업로드중인 파일이 자신의 파일에 지정된 제한보다 크지 않은지 다시 확인하십시오. php.ini 파일