問題タブ [codeigniter-3]
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.
php - Codeigniter 3 でのセッション ライブラリの拡張
しばらく CI を使用していて、最近 CI 3 にアップグレードしました。セッション ライブラリがフォルダーに移動されていることに気付きました。以前は、デフォルトの CI ライブラリを拡張する独自の MY_Session.php ファイルが application/libraries フォルダーにありました。
また、autoload.php ファイルを使用して、セッション ライブラリを自動ロードします。Unable to load the requested class: Session. が表示されるため、これは機能しなくなりました。
MY_Session.php ファイルを削除すると、ページが読み込まれますが、拡張機能が失われます。
CI 3 でセッション ライブラリを拡張する方法を正確に知っている人はいますか?
codeigniter - Codeigniterと複数のpostgreスキーマ
Codeigniter3.0の開発バージョンを使用しています。
$db構成にSchemaプロパティがあることがわかります。しかし、ATMに使用しているようには見えません。私のスクリプトは複数のスキーマに接続しないためです。
postgreで複数のスキーマを使用してCIをセットアップする方法を知っている人はいますか?
php - codeigniterクエリを使用した条件で結果をカウントできません
display_id が引数である bookdetails テーブルの行をカウントしようとしています。私が合格したとしましょう$id='3'
。しかし、私は出力を得ていません。私が試しているコードは間違っていると思います。このクエリを正しく書くのを手伝ってください
php - Codeigniter トランザクション
Codeigniter トランザクションを使用しています
これは正常に動作します。私が抱えている問題は、内部でtrans_start
他trans_complete
の関数を呼び出しており、それらの関数がデータベースを処理しているため、挿入と更新といくつかの削除が含まれていることです...例:
これらの関数が実行され、何らかのエラーが発生した場合、CodeIgniter はロールバックを行いません。
そのような問題に対処する最善の方法は何ですか?
私が念頭に置いている唯一の解決策は、これらの関数からエラーを返し、それらの関数内に ( trans_stat
and trans_complete
) を追加することです。$this->db->trans_rollback
元:
これを行うより良い方法はありますか?
更新 1:
要求されたように、私が呼び出している外部関数のサンプル:
php - CodeIgniter、Redis をセッションマネージャーとして使用
githubから、設定する必要がある構成の主張
これは、セッション データを redis に保存するために必要です。
ただし、CodeIgniter のガイド$config['sess_use_database'] = TRUE;
によると、セッション クラスがセッション データを DB に格納する場合。
「sess_use_database」構成をtrueに設定しても、データベースの書き込みがどのようにバイパスされるかを理解したいです。
次に、この方法では、phpredis 拡張機能をインストールする必要があります。
次のgithub リポジトリから別の CI redis ライブラリを既にインストールしています。
phpredis の代わりに上記のライブラリを使用できるように、[ファイル名: ci_sock/part_two/MY_Session.php] ericterpstra のコードを構成するのを手伝ってくれる人はいますか?
codeigniter - CodeIgniter 3 は完成していますか?
一部の人々がそれ (PyroCMS) を使用していることは知っていますが、CodeIgniter 3.0 は完全で、本番環境で使用する準備ができていますか?
私は何年も CodeIgniter を使用してきましたが、現時点では機能が低下しているように見えますが、非常に使いやすいです。
更新: この質問のタイトルは、以前は「CodeIgniter 3 は完成しましたか?」でした。つまり、CodeIgniter は完全であり、本番環境で使用する準備ができています (死んでいるわけではありません)。
codeigniter - CodeIgniter 3 404 の原因となるクラス ファイル名の大文字の最初の文字
シナリオ
CodeIgniter 3 の現在の開発バージョンにアップグレードしている Web サイトがあります。アップグレード手順に従って、すべてのクラス ファイルの名前を最初に大文字に変更しました (例: application/controllers/Home.php)。
期待される結果
小文字の URL でコントローラを通常どおり使用するには、次のようにします。
Home.php コントローラーを使用します。
私が得たもの
URL の最初の文字が小文字の場合、大文字のファイル名は自動的に呼び出されません。(404 エラー)。
私が試してみました
- コントローラの最初の文字を大文字にして URL を入力します。http://examplesite.com/Home/これにより、期待どおりにコントローラーが生成されます。
- routes.php のデフォルト コントローラを大文字にすると、期待どおりにページが生成されます。ただし、最初の文字が大文字のコントローラーを含めるようにすべての URL を変更する必要がある場合、これは理想的とは言えません。
ノート
- サイトは PHP 5.3.17 FastCGI で実行されています。
- index.php は、次の .htaccess ルールで URL から削除されました。
どんな助けでも大歓迎です。
編集 1
_validate_request
コアルーターの機能に絞り込みました。からその関数への呼び出しをコメントアウトすると機能し_set_request
ます。
編集 2
_validate_request
関数の名前を に変更_validate_request2
し、新しい名前を使用して呼び出すと、完全に機能します。この関数名は予約語ですか?
php - Codeigniter: コアベースコントローラーで認証を使用するのは良い習慣ですか?
私はこれをやっています。
例 core/MY_CONTROLLER.php
今私のコントローラーコンストラクターにあります。MY_CONTROLLER コンストラクターが最初に呼び出されるため。したがって、$action_user オブジェクトを取得する必要があります。またはすでにログインしようとしています。
ページを制限したい場合は、追加するだけです
そのコンストラクターに、ユーザーが許可されていない場合、ページは終了し、リダイレクトなしで私のビューページを彼に送信します。
このようなアプローチを使用する理由は、ユーザーが任意のコントローラーからログイン、ログアウトできるようにするためです。彼が訪問した場合、http://localhost/RANDOMECONTROLLER/logout
彼はまだログアウトします..ログインについても同じです。
また、ajax でページのパーシャルを取得するときに役立つこともあります。ログインフォームを使用してランディングページをこの div に返すだけです。
例
統計ページには 4 つのウィジェットがあり、そのうちの 1 つは管理者のみが表示できます。次に、ajaxが4つのウィジェットをフィッティングすると、3と、ログインするには管理者である必要があるというログインフォーム付きのdivが表示されます..
...
これはこれを行う良い方法だと思いますか?それともバグゲーブルスパゲッティですか* * ?