1

現在、URL に 3 つのパラメーターを渡す必要があるプロジェクトに取り組んでいます。私のURLは次のようになります-

localhost/newproject/index.php?file_name=clients&mode=edit&id=1

さまざまなパラメーターを渡すときに実行する機能を以下に示します

1) URL - localhost/newproject/index.php?file_name=clients

機能- ファイル templates/modules/clients/clients.php をインクルードします

2) URL - localhost/newproject/index.php?file_name=clients&mode=edit

機能- ファイル template/modules/clients/cliemts-edit.php をインクルードします。また、クライアント ID が設定されていないため、クライアント編集画面を使用して新しいクライアントを追加します。

3) URL - localhost/newproject/index.php?file_name=clients&mode=edit&id=1

機能- ファイル template/modules/clients/cliemts-edit.php をインクルードします。そして、client_id が 1 のクライアントを更新するために、clients-edit 画面が使用されます。今、この URL をこれに変換しようとしています。

ローカルホスト/新しいプロジェクト/クライアント/編集/1

htaccessに次のコードがあります

RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ index.php?file_name=$1&mode=$2&id=$3 [L]
RewriteRule ^([^/\.]+)$ index.php?file_name=$1 [L]

私が直面している問題は、クライアント編集画面が含まれるたびに、css ファイル、javascript ファイル、および画像のパスが変更されることです。どうすればこれを克服できますか?

4

1 に答える 1

0

あなたは正しい軌道に乗っています。

試す:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ index.php?file_name=$1&mode=$2&id=$3 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)$ index.php?file_name=$1&mode=$2 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)$ index.php?file_name=$1 [L]

css/scripts を修正するには、リンクを絶対 URL (で始まる/) にするか、ページのヘッダーに相対 URI ベースを含める必要があります。

<base href="/" />
于 2013-09-19T07:33:32.293 に答える