2013-01-07 71 views
1

首先,相關代碼:


查看

<div id="search"> 
    <?= form_open('sheet/search') ?> 

    <?= form_input('search_query', '', 'id="search_query" placeholder="Search Sheet Music"') ?> 
    <?= form_submit('submit', 'Search!', 'class="hidden"') ?> 

    <?= form_close() ?> 
</div> 

控制器片/搜索

public function search() 
{ 
    if ($this->input->post('search_query')) 
    { 
    // blah 
    // [ ... ] 

$_POST完全是空的。


究竟是什麼?令人討厭的是,其他表單在我的網站上工作得很好。此外,這在我的測試服務器上完美工作......所以我猜測我的配置文件,.htaccess或其他東西都有些不可思議。但是,我不知道是什麼原因造成的。

如果你有一個想法,需要更多的信息,隨意指定。我只是不知道去哪裏看,或者要改變什麼!任何幫助將非常感激。

謝謝!


編輯2013年1月8日

好吧,我做了一個發現。當我的索引頁從config/config.php中刪除時,搜索不起作用。但是,當它被添加時,它會工作。

它仍然沒有任何意義。

下面是我的.htaccess文件。想想我需要修改它嗎?我完全不知道它爲什麼不能繼續工作,但這是朝正確方向邁出的一步。

RewriteEngine on 
RewriteCond $1 !^(index\.php|images|assets|sheet|robots\.txt) 
RewriteRule ^(.*)$ /index.php/$1 [L] 
+0

你不應該使用「<?=」 ... –

+1

@SureshKamrushi它在PHP 5.4,如有必要笨自動重寫它們自動啓用。 –

+0

你怎麼知道'$ _POST'是完全空的?你'var_dump($ _ POST)'? –

回答

3

AHA,我明白了!

的問題是相當狡猾。顯然,因爲我的.htaccess文件除了sheet目錄,並且控制器名稱相同,所以CodeIgniter路徑中的內容變得麻木了。究竟是什麼,我不知道。但很糟糕,顯然!

要在未來解決這個問題的人......請確保您的.htaccess文件不與你的控制器搞亂!