2011-11-11 7 views
0

$ _GET ['変数']を使って情報/ページを取得するにはmod_rewriteを使うのは簡単です。どのようにこれを行うためのオプションをユーザーに与えますか。例:デフォルトでは、URLはblah.com/user?id = 74378です。利用可能であれば、手動でURLを作成することができます。これはどうですか?"オプション"を使ってPHPで独自のURLを作成する方法

答えて

0

あなたが使用するURLのリストとテーブルを維持することができます。これは、ユーザーがURLを使用できないかどうかをチェックし警告するためです。ユーザーがblah.com/user/myspecialurlを試行した場合、htaccessはblah.com/user?url=myspecialurlを呼び出す必要があります。次に、表を使用してユーザーIDを検索し、GET変数を使用して内容を取得します。

このすべては、あなたがURL

+0

右は、簡単です。したがって、 "if_available_url"テーブルとともに、 "users"テーブルにURLカラムを追加することができます。デフォルトでは空に設定され、ユーザがURLを指定するとUPDATEされます。 PHPスクリプトでは、新しいURLが設定されているかどうかを照会するかどうかでif/elseを作成することができます。それ以外の場合は、user_idが設定されているとデフォルトになります。 – Graham

+0

どのプロジェクトでも、データベーススキーマに注意する必要があります。 userテーブルやurlテーブルから必要とされる詳細の種類に応じて、 'user'テーブルを直接使用するか、' if_url_available'テーブルに 'userid'フィールドを追加することができます。とにかく、スキーマはあなたのニーズに非常に特化したものです。 – abhinav

0

このページの最初の部分は、何も指定されていないユーザー定義の文字列とその文字列を固定ページのGET変数として処理するのに役立ちます。

http://www.sitepoint.com/guide-url-rewriting-2/

0

使用PHPモジュールのmod_rewriteのための固定フォーマット/制限があり仮定の下で、htaccessファイルのルール:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?page=$1 [L,QSA] 

とindex.phpの中:

$page = isset($_GET['page']) ? $_GET['page'] : 'index'; 
// filter var $page 
// .. 
// then include needed page 
include './pages/'.$page; 
// or get content from sql 
sql(..WHERE page = $page..) 
関連する問題