2015-01-02 155 views
0

這是我第一次使用codeigniter來創建一個網站。 我的問題是如下:發送變量給控制器並使用codeigniter重新查看

我的看法文件包含:

<label class="control-label ">Insert Number of photos : </label> 
<?php echo form_open('project_controller/no_of_pics'); ?> 
<input name="no_pics" placeholder="Insert a number" type="text" value="<?php echo set_value('no_pics'); ?>" > 
<input type='submit' name='submit' value='Insert' /> 
<?php echo form_close() ?> 
<?php $no_pic=''; ?> 
<?php echo $no_pic; ?> 
<br><br>` 

我的控制文件包括:

public function no_of_pics(){ 

     $this->load->view('control_panel'); 
     $number=$this->input->post('no_pics'); 
     $hoho = array('no_pic' => $number ); 
     $this->load->view('control_panel',$hoho); 

} 

,我寫這句話的.htaccess文件:

$route['project_controller/no_of_pics'] = "/project_controller/no_of_pics"; 

我的問題是,我不能將no_pics回到視圖,它應該是c赫克通過控制器驗證規則的數目,但我想先拿到數回視圖文件

時,我寫上面的代碼,我得到了多少回,但在視圖文件的一個普通網頁沒有任何造型和在我輸入表格中插入的數字的頂部,甚至不在我想要使用的位置。

3-01-2015 我想我知道問題是什麼,但我仍然不知道如何解決它。我有在控制器 「project_controller」的另一種方法是:

public function project($page = 'home'){ 
    if (! file_exists ('application/views/'.$page.'.php')){ 
     show_404(); 
    } 
$this->load->view($page); 
} 

我在route.php文件中寫道:

$route['(:any)'] = 'project_controller/project/$1'; 

所以我覺得這個問題是"function no_of_pics()"無法查看頁面在向function project()發送一個變量時正確地負責,那麼現在的解決方案是什麼?

+0

我想我知道問題是什麼,但我仍然不知道如何解決它。 我有在控制器 「project_controller」 的另一種方法是: '應用/視圖/'.$頁'。 '公共職能項目($頁= '家'){ \t \t如果(file_exists(PHP ')){ \t show_404(); \t} \t \t $ this-> load-> view($ page); \t \t }' 和我寫的路線。php file: '$ route ['(:any)'] ='project_controller/project/$ 1';' 所以我認爲問題是「函數no_of_pics()」在發送變量時無法正確查看頁面它作爲函數project()負責,那麼現在有什麼解決方案?! – Abdelrahman

+0

有沒有人瞭解我的問題?! – Abdelrahman

回答

0

您必須通過函數的第一個參數提供字段名稱。第二個(可選)參數允許您爲表單設置一個值。 check here

set_value('no_pics',$no_pic); 
+0

我應用第二個參數後得到了相同的結果。 – Abdelrahman

+0

你在no_of_pics()提交的價值?嘗試Print_r($ _ POST)並檢查。 – AVM

+0

我已經得到了在「<?php echo $ no_pic;?>提交的值」,我在url欄中看到:http:// localhost/project/project_controller/no_of_pics 並且我插入的數字出現在白頁,然後在2秒後,它加載control_panel視圖頁面,我發送varvarible但沒有造型,請再次修改我的問題,我編輯它以添加更多的細節,謝謝 – Abdelrahman

0

您需要從視圖文件

<?php $no_pic=''; ?> 

刪除此行它重置從控制器傳遞變量。

+0

,但如果我刪除此行將出現錯誤消息說未定義的變量no_pic!所以我寫這條線然後: <?php echo $ no_pic; ?> 以獲得$ no_pic的值 – Abdelrahman

0

你可以試試這個技術

$hoho['no_pic'] =$number; 
    $this->load->view('control_panel',$hoho); 

我想,然後你發現它視圖頁面上。

+0

無論是發送變量以通過數組還是對象查看文件都是相同的結果。 – Abdelrahman

+0

我真的需要幫助,請再次閱讀我編輯的問題,以獲取更多附加信息 – Abdelrahman

相關問題