2016-06-24 10 views
0

データベース内の情報に基づいてuriを作成するにはどうすればよいでしょうか。私はどのように動的なPHPページに投稿し、データベースを検索してからhtaccessを使ってそのURLを書き直すことができるのか知っています。しかし、どのように私はURIに基づいてページを生成するためにPHPを得ることができますリンククリックしてメニューで言うことができます例:データベースはURLの部分のユニークなURLになりますユニークなタイトルを持って、メニュー内の "a href"リンクのリンクuri。したがって、somesite.com/がメインページを読み込んでも、ユーザーがリンクをクリックすると、動的に生成されるページであるsomesite.com/a-dynamic-page/が表示されます。ページが存在しないため、404エラーをスローする代わりにサーバーを取得する方法、データベースからデータベースを読み込んでデータベースからデータを読み込んだり、データベースで "a-dynamic" - ページ "< - データベース内のユニークなURI?あなたがこの質問を明確にする必要があるかどうかを教えてください。データベース・データを動的にロードするPage

答えて

1
あなたはおそらく最初のあなたの.htaccessファイル内でこれを置くことによって、あなたが書いたいくつかのPHPスクリプトを使用して、不足しているすべてのページを処理するために.htaccessファイルをお伝えしたいと思います

:効果的にApacheを言うだろう

<IfModule mod_rewrite.c> 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /my_processor.php [L] 
</IfModule> 

...存在しないページへのすべてのリクエストは、my_processor.phpというスクリプトに、Webサイトのドキュメントルートに直接リダイレクトする必要があります。

my_processor.phpスクリプトの中に入ったら、$ _SERVER ['REQUEST_URI']を見て解析し、そのスクリプトを使って次に行うべきことを判断することができます。例:

[my_processor.php] 
<?php 

// 
@$uri=$_SERVER['REQUEST_URI']; 

switch($uri) 
{ 

default: die("Error"); 

case "/some-path-1/": 
    SomeFunction1(); 
    break; 

case "/some-path-2/": 
    SomeFunction(2); 
    break; 
} 

?> 

上記のように単純なことは許してください。しかし、うまくいけばいいと思います。

+0

これは、これが動作する可能性があります!私がこのコードを実装して、それがうまくいけば答えを承認しましょう。ありがとうございました。それは.htaccessと関係がありましたが、確信が持てませんでした。ありがとう! – DEVPROCB

+0

これは私が必要としていた通りに正確に機能しました。私は必要なものに合うようにPHPコードを変更していますが、htaccessのルールは魅力のように働きました、もう一度ありがとう! – DEVPROCB

+0

@DEVPROCBよろしくお願いします! –

関連する問題