2016-06-17 11 views
0

URLの最後のスラッシュの後の文字列をチェックしようとしています。次のようにURLをチェックしようとすると内部サーバーエラーが発生する

私のコードは次のとおりです。

$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
$data = substr($url, strrpos($url, '/') + 1); 

if($data == "dashboard") { 
     require_once VIEW_ROOT . '/cp/dashboard_view.php'; 
} else { 
     echo $data; 
} 

私はhttp://MYURL/dashboard/inに行くたら、それは$dataとしてin表示する必要があります。代わりに、それは私に500エラーを与える。

答えて

1

に参加する必要があり

$url = "http://".$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI]; 

を.OR他の$ _SERVER [REQUEST_URI]条ホスト名の後にデータを与えてください。

最後のデータの後には'/'が最適です。 これは動作します。

$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
$x = explode('/',$url); 
$data = $x[sizeof($x)-1]; 
echo $data; 
+0

同じ500エラーです。でも、お試しいただきありがとうございます:) – Chris

+0

私もあなたのコードでそのエラーを取得していない... ifステートメントを完全にコメントしてください。 –

+0

'$ data'をチェックするにはif文が必要です。編集:もし私が 'require'をコメントアウトしても、それはまだエラーを投げます。 – Chris

0

あなたは試してみてください:...あなたは、単に文字列を破るために爆発()関数を使用することができます

http:// string with $_SERVER[HTTP_HOST] and then $_SERVER[REQUEST_URI] using .(dot). 
+0

同じエラーが – Chris

+0

があなたのコードに私のURLをコピーして –

+0

いや、まだ同じエラーがそれを実行に発生します。 – Chris

関連する問題