問題タブ [codeigniter-url]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
9667 参照

.htaccess - base_url を使用した Codeigniter リダイレクト

base_urlを追加する単なる in とanchor('controller/method')は異なる結果が生成されることに気付きました。<a href="controller/method">anchor()

anchor('controller/method'):

<a>:

コントローラーでこれと同じ効果 (アンカー) を実現するにはどうすればよいですか? つまり、リダイレクトに base_url を追加しますか?

私は別のメソッドを呼び出すフォームを持っているのでmethod2redirect('controller/method'). しかし、間違って にリダイレクトされcontroller/controller/method2、フォームが再度送信されると、 にリダイレクトさcontroller/controller/controller/method2れます。

そのため、事前に base_url を付けてコントローラー/メソッドにリダイレクトする方法を知りたいのです。redirect( base_url() . 'controller/method' )動作しません。

index_page は次のように設定されています。

base_url は次のように設定されています。

.htaccess:

CI マニュアルで提供されている .htaccess が機能しないため、これに基づいています。

何か案は?

0 投票する
2 に答える
10464 参照

php - Codeigniter: Base_url が機能していないようです

Twitter の公開タイムラインからツイートを取得し、それらを 60 秒間キャッシュするなどの単純なサイトを開発しました。最近ホストを Hostgator から Mediatemple に移動しましたが、私のサイトは以前は Hostgator で正常に動作していました。

私のアプリケーションはデータベース接続を使用しておらず、どのような形式のフラット ファイル データベースも使用していません。ツイートはルート ディレクトリに保存されている XML ファイルにキャッシュされますが、そのほとんどは重要ではありません。

以下に示すように、url ヘルパーが含まれています (これは autoload.php のヘルパー行です)。$autoload['helper'] = array('url');

また、.htaccess ディレクティブを使用して URL から index.php ファイルを削除しました。これも以前は Hostgator で機能していました (以下の .htaccess コードを参照)。

アプリケーション内のビュー フォルダーにある私の home.php ビュー ファイルでは、ビュー ファイル内の Hostgator で以前に動作していた関数 base_url() を使用して、ヘッダーに base href 値を追加しています。<base href="<?php echo base_url(); ?>" />

config.php ファイルでの base_url の値は次のようになります。

起こっているように見えますが、base_url はまったく表示されません。何らかの理由で空のように見えるため、 base_url の値をエコーアウトしているようには見えません。

さらに奇妙なのは、「fetch.php」という別のビュー ファイルにリンクがあり、何らかの理由で値が取り除かれているように見えることです (XSS フィルタリングはオフになっています): <a href="threetune/show"><img src="assets/images/cookie.jpg" /></a>threetune/show 部分は表示されず、このような空の href 値しか表示されません<a href=""><img src="assets/images/cookie.jpg" /></a>

Mediatemple サーバーの制限や設定が必要な PHP.ini フラグなど、私が行った可能性のある問題を誰かが見ることができますか? ありがとうございます。十分に説明できたことを願っています。

0 投票する
3 に答える
2852 参照

php - CodeIgniterでこれをURIルーティングするための最良の方法は?

したがって、CodeIgniterのWebサイトであるForrstの例を次に示します。

http://forrst.com/posts/PHP_Nano_Framework_WIP_Just_throwing_some_ideas_o-mU8

その素敵なURLを見てください。ルートサイト、次にposts投稿タイトルと短い抜粋があります。これは、ユーザーエクスペリエンスにとって非常に優れています。

しかし、私のCodeIgniterサイトのURLは単純にひどいものです。例えば

http://mysite.com/code/view/120

したがって、コントローラーにアクセスし、次にcode関数にアクセスし、最後に投稿IDがあります(それに基づいてデータベースクエリを実行します)。view20

ルーティングができることに気づきました。したがって、routes.phpファイルに次のように記述します。

$route['posts/(:num)'] = "code/view/$1";-したがって、これによりhttp://mysite.com/posts/120はhttp://mysite.com/code/view/120同じになります。もう少しいいです、私はあなたが同意すると思います。

私の質問は、投稿の抜粋が実際にURLに追加される、Forrstと同様の手法をどのように使用できるかということです。これがどのように可能になるのか、私にはよくわかりません。PHPスクリプトは、特に同じタイトルのものが複数ある場合、データベースで何を検索する必要があるかをどのように判断できますか?

ありがとう!

ジャック

0 投票する
2 に答える
597 参照

php - CodeIgniter + encodeURIComponent

codeigniter 関数のクエリ文字列で送信された URL を取得しようとしています。

ただし、何らかの理由で、URL に常に http プロトコルの「/」がありません。ログから得られるのは次のようなものです。

0 投票する
1 に答える
89 参照

regex - codeigniterを$_GETで動作させますか?

CIが$_GETを処理する際に問題が発生し、それを克服する方法を見つけました。

問題は、ここでセキュリティの問題を確認できますか?

私は私のURLを次のようにすべて持っています

そして、CodeIgniterのデフォルトのコントローラーはインデックスと呼ばれます

$_GETに従う限り、 CIをで動作させることができますclass/function/default_controller

これらのURLは両方とも機能します。

事は私はこれらも機能させたいということです

私の解決策は、の少しの正規表現でした$_SERVER['REQUEST_URI']

私は正規表現の専門家ではないので、ここでセキュリティの問題の可能性を確認できますか?

ありがとうございました。

0 投票する
1 に答える
217 参照

php - codeigniter に最も適したファイル構造はどれですか?

こんにちは、codeigniter のファイル構造について考えています。現在私が行っているのは、開発中のプロジェクトでフォルダーを作成し、「myProject」と名付けて、そのファイル内に codeigiter フォルダーを配置することです。 .そして、コントローラーフォルダーに myProject というクラスを再度作成することにより、すべてが正常に行われます...

この構造は機能しますが、非常に見苦しい URL を作成します (たとえば、ローカル サーバーで): http://localhost/myBlog/CodeIgniter_1.7.2/index.php/myBlog

また、ルート フォルダーにいくつかの問題が発生します...ルートに css フォルダーがある場合は、「/myBlog/CodeIgniter_1.7.2/css/myBlogStyle.css」のように呼び出す必要があります。

それは好きではありません:「css/myBlogStyle.css」

codeigniter を使用する正しい方法について何か提案はありますか? 前もって感謝します

0 投票する
1 に答える
270 参照

codeigniter - URL データが codeigniter コントローラーの関数に渡されません

私が使っているドメインはhttp://www.domainname.com/admin/users/edit/1

0 投票する
1 に答える
1980 参照

codeigniter - 1 つのホストでの Codeigniter + Opencart -- URI ルーティングの問題

OKボードを検索しましたが、特定の答えが見つかりませんでした。ウェブサイトとショップは同じではありません。Codeigniter はすべての処理に使用されているので、Opencart を使用してショップを追加したいのですが、URI ルーティングが問題です。

(実は私はCIのファンではありませんが、前の人が使っていたので、続けるしかないので、CI沿いにショップを追加する必要があります!)

ウェブサイトをショップから分離し、それぞれをホスト上の個別のフォルダーに配置し、.htaccess 書き換えルールを使用して各 MVC に関連する URI を処理する必要がありますか、それとも簡単なことでしょうか?

0 投票する
2 に答える
654 参照

codeigniter - codeigniter マルチドメイン設定の質問

codeigniter のマルチドメイン設定をしようとしています。

このようなリンクをサポートする必要があります

www.site.com/users/username subdomain.site.com www.othersiteparkedonsite.com

この3つの異なるケースで、ケースに関するアプリケーションフォルダーをロードしたい

index.php の次のコードは、サブドメインとドメインのケースでのみ機能します

しかし、最初のケースとサブドメインを識別する方法????

コードアップを使用すると、ルートフォルダー内の /sites/ フォルダーを 1 つだけ使用して、サブドメイン名またはドメイン名でフォルダーをロードできますが、ルーティングを作成する方法、または htaccess を使用して、ユーザー名、サブドメインに関するアプリケーションフォルダーをロードできるようにします。ドメイン、およびコントローラー??? www.site.com/users/usernameX にアクセスすると、

index.php は /usersites/usernameX フォルダを読み込みます

からのサブドメインの場合

sub1.site.com はアプリケーション フォルダを読み込みます

/subdomains/sub1_site_com

同じフォルダに駐車している他のドメインの場合

www.otherdomain.com が読み込まれます

/sites/otherdomain_com

www.site.com/somecontroller/somefunction は、ルートにあるメインの /application フォルダーから動作します ...

手伝って頂けますか?

0 投票する
3 に答える
3160 参照

codeigniter - 再ルーティング後にデフォルトのコントローラーがロードされない

私は、そのようなリンクでサイトを提供できるようなコードを持っている codeigniter multistie インストールを持っています

site.com/sites/sitename/controller/function/vars site.com/controller/function/vars/

subdom.site.com/controller/function/vars

課題は、ルーティングと

私は次のようにリンクを操作します

site.com/sites/sitename/controller/function/vars site.com/controller/function/vars

行くときのアイデアで

www.site.com/sites/sitename/

デフォルトのコントローラーがロードされていません。

リンク構造に関しては、リンクにアクセスしたときにconfig.phpを作成しました

site.com/sites/sitename/controller/function/vars

それから

私が行くなら

site.com/controller/function/vars

それから

$config['base_url']="http://site.com/";

2 番目のケースでは、デフォルトのコントローラーが完全にロードされます。サブサイトの場合 not/

私はちょうど404を得ます

何をすべきか?

更新 2:

マルチフォルダーのセットアップがあります。

ユーザーが www.site.com/sites/site_name にアクセスしたとき

次に、アプリケーションのフォルダー

/root_folder/usersites/site_name が読み込まれます。

ユーザーが site.com/controller/function/var1/var2 だけに移動する場合

であるデフォルトのアプリケーション フォルダ

/root_folder/application が読み込まれます

ユーザーが sub1.site.com アプリケーション フォルダーに移動したとき

/root_folder/domains/sub1_site_com が読み込まれます

アドレスバーに入力すると

http://site.com/sites/site_name

no URI のようにする必要があります。デフォルトのコントローラーをロードする必要があります。