0

我有一個問題,如果頁面不存在,如何顯示404錯誤。例如,如果我有bloc.com,並且在鏈接bloc.com/?id=45的末尾添加它重定向到主頁但頁面不存在。 CI中存在的配置:CodeIgniter中的重複站點

$config['enable_query_strings'] = TRUE; 

如果我更改爲FALSE,它在UTM標記給人錯誤,如何顯示404頁面是否在UTM bloc.com/?=45但做工精細tags.Please幫我。

function show($id = 0) 
{ 
    $date= $this->model->get_date($id); 
    if($date) 
    { 
     .... 
    } 
    else 
    { 
     show_404(); 
    } 
} 

我編輯了我的問題。

+0

你將有一個檢查,看看是否ID是正確的,所包含的數據來填充你的頁面,如果它不是那麼'show_404();' – mic

+0

維諾德VT,如果我添加在鏈接的結尾?id = 454它會將我重定向到主頁 – user3744761

+0

您的routes.php文件中是否有任何規則可能導致您遇到該問題?事實上,如果你發送參數爲var var – Chococroc

回答

1

這不行嗎?

public function show() 
{ 
    if (isset($_GET['id'])) 
    { 
     if ($check = $this->model->get_date($_GET['id'])) 
     { 
      ...... 
     } 
     else 
     { 
      echo 'show_404()'; 
     } 

    } 
    else 
    { 
     echo 'no ID set'; 
    } 
} 
在主控制器
+0

不需要編寫show($ id)不要工作............. – user3744761

+0

你沒有複製和粘貼,是嗎?我把這個放在我本地安裝的CI上,我可以訪問「http://localhost/tests/index.php/blog/show/?id = 1」,它會在url中引用 – Craig

+0

引號? –