2012-06-26 48 views
0

我有這種形式與日期輸入。cakephp鏈接外部形式極大訪問表單輸入值

 echo $this->Form->create('Nodata'); 
     echo $this->Form->input('date1', array('type' => 'date', 'label' => 'From:')); 
     echo $this->Form->input('date2', array('type' => 'date', 'label' => 'To:')); 
     echo $this->Form->end('Get Hours'); 

當提交表單時,我在同一視圖中顯示結果,在表單下方。

我的問題是我有一個鏈接不是窗體的一部分,需要從窗體上的日期字段中讀取值(在視圖中),以將其用作此鏈接上的參數 。

// date1 is the param I need to take the value from date input 
<th> <?php echo $this->Html->link(__('Agents Detail'), array('controller' => 'qcas', 'action' => 'hours', 'paramProject' => $hour['Qca']['dir_id'], 'date1' => $this->data)); ?> </th> 

請注意此鏈接是窗體之外,我需要一種方法來讀取窗體上的輸入作爲參數在我的鏈接中使用。

你能幫忙嗎?

謝謝!

卡洛斯

+0

不知道我是否正確理解你的問題。您沒有指定該鏈接是否需要在提交表單或提交表單之前(實時)獲取date1。在後來的情況下,你有沒有考慮使用JavaScript/jQuery?如果是前者,可以將date1值設置爲變量(在控制器中)並傳遞給視圖。 – yetanotherse

回答

1

而不是僅僅使用$this->datadate1元素,你需要參考的$this->data對象領域。

CakePHP的< 2.0

'date1' => $this->data['Nodata']['date1'] 

CakePHP的2.0+

'date1' => $this->request->data['Nodata']['date1'] 

我不知道你想在目的地鏈接做什麼,但你可能需要格式化日期好:

'date1' => date('Y-m-d', $this->request->data['Nodata']['date1']) // you may need strtotime 
+0

太棒了!這對我來說是這樣的:'$ this-> data ['Nodata'] ['date1'];'在我的視圖本身中,我將日期格式化如下:$ origDate1 = $ this-> data ['Nodata'] ['' DATE1' ]; $ year = $ origDate1 ['year']; $ month = $ origDate1 ['month']; $ day = $ origDate1 ['day']; $ paramDate1 = $ year。 ' - '。 $月。 ' - '。 $ day;'謝謝! –