2016.06.29
1. 問題の説明
今日は、ThinkPHP を使用してユーザーのログインと登録インターフェイスを作成しました。フォームを送信するときに、アクション属性を入力する方法がわかりません
注: 私は ThinkPHP3.2.3 を使用しています。バージョンによっては異なる場合があります
2. 解決プロセス
方法 1): localhost/..../index.php/module/controller/method/parameter....
完全な URL アドレスを使用して、提出したいです。最初はやり方がわからなかったので、この一番不器用な方法を使いました。 。 。 。
メソッド 2): {:U('Module/Controller/Method/Parameter')}
U メソッドは、URL を構築するための ThinkP の組み込みメソッドです。詳しい使用方法については、ThinkPHP 開発マニュアルを参照してください。
方法 3): __MODULE__/controller/method/parameters、
__CONTROLLER__/method/parameters、
__ACTION__/parameters、
つまり、システム定数を使用してアドレスを簡素化します。ThinkPHP には、現在の URL アドレスを保存するための多くのシステム定数が用意されています。
例: __ROOT__ Web サイトのルート ディレクトリ アドレス
__APP__ 現在のアプリケーション (エントリ ファイル) アドレス
__MODULE__ 現在のモジュール URL アドレス
__CONTROLLER__ 現在のコントローラー URL アドレス
__ACTION__ 現在の操作 URL アドレス
__SELF__ 現在の URL アドレス
概要
3.フォームに送信する必要があるのは、どの php ファイルに送信するか、およびファイル アドレスを指定することだけです。ただし、ThinkPHP を使用してフォームを送信する場合は、どのモジュールのどのコントローラーのどのメソッドを送信するか、デフォルトでコントローラーとメソッドが含まれるindex.php のようなファイルを指定する必要があります。そうしないとエラーが発生します。
さらに、オンラインで解決策を検索すると、見つかった答えのほとんどが __RUL__/method/parameters を使用していることがわかりました。その後、ThinkPHP3.2.3 のマニュアルを確認したところ、システム定数 __URL__ がないことがわかりました。私自身のテストの結果、__RUL__ は現在のコントローラーのアドレスである __CONTROLLER__ と同等であることがわかりました。
オンラインで検索する方法の多くは、以前のバージョンの方法です。私は初心者なので、オンラインで検索するときはいつも混乱します。使用するときは、情報の適時性が重要であるため、バージョンに注意する必要があります。
以上、3. ThinkPHP を使用する際のフォームアクション送信アドレスの形式について、内容も含めて紹介しましたが、PHP チュートリアルに興味のある友人の参考になれば幸いです。