問題タブ [cakephp]
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 - PHP - securing parameters passed in the URL
I have an application which makes decisions based on part of URL:
This happens to be in a cake app so $this->params['url'] contains an element of URL. I then use the element of the URL so decide which data to use in the rest of my app. My question is...
whats the best way to secure this input so that people can't pass in anything nasty?
thanks,
cakephp - CakePHP の AuthComponent に "Users" 以外のテーブルを使用するにはどうすればよいですか?
CakePHP のAuthComponentは、ユーザー名とパスワードを含む Users テーブルがあることを前提としています。デフォルトのテーブル名をユーザーからアカウントにオーバーライドする方法を見つけたいと思います。
背景情報:
私がデータベースを設計した方法は、Users テーブルと Accounts テーブルを持つことです。
アカウント:
ID
ユーザーID
ユーザー名
パスワード
認証サービス (たとえば、自分のサイト、Facebook、Google、OpenIDなど)
ユーザー:
- ユーザーのすべての個人情報 (年齢、性別など) を持っているだけです。
その理由としては、
- 各ユーザーは、ログインできる複数のアカウントを持つことができるため、1 つにロックされることはありません。
- サードパーティのサービスをアカウントに接続して、さらに素晴らしいものにすることができます
さて、問題に戻ります....
CakePHP にはデフォルトのフィールド名の変更に関するドキュメントがありますが、デフォルトのテーブル名の変更については何も見つかりませんが、本質的には似ていると思います...
デフォルトのフィールド名を変更する例:
これを達成する方法はありますか、それとも CakePHP の規則に従ってテーブルを再構築し、それでも同じことを達成する必要がありますか?
php - 2 番目のテーブルの値をチェックする CakePHP の $data findAll クエリ
$data クエリ テーブル [id] が 2 番目のテーブルに一致する [sub_id] を持っている場合にのみ、CakePHP で DB をクエリし、$data に物事を返す方法で CakePHP に困惑しました。
標準クエリ:
しかし、$data['Table1']['id'] が ['table2']['sub_id'] で見つかった場合にのみ、$data に値を入れたいと考えています。
ありがとう!
model-view-controller - ファット モデル、スキニー コントローラー、MVC デザイン パターン
MVC を銀行にたとえて説明しているブログ記事を読みました。MVC フレームワーク (CakePHP) を使用した Web アプリケーション開発の経験が数か月あるため、基本は理解できましたが、ロジックを配置する場所に欠陥のあるアプローチを取っていると思わせるテーマが見え始めました。
- ファット モデル、スキニー コントローラ
- モデルにできるだけ多くのビジネス ロジックを保持する
私のアプリでは、モデルは拒食症で、コントローラーは肥満です。コントローラーにはすべてのビジネス ロジックがあり、モデルには関連付けと検証ルール以外には何もありません。
コントローラーをスキャンすると、モデルに含まれるはずの多くのロジックを特定できるようになりました。
- アプリにはアイテムを含むリストがあり、アイテムをランク付けできます。リストをランク順に並べ替えるソートロジックはコントローラーにあります。
- 同様に、アイテム (Item モデル) にもイメージ (Image モデル) があります。各アイテムにはデフォルトの画像があります (items テーブルの image_id で指定)。アイテムが画像とともに表示される場合、デフォルトの画像が最初に表示されます。コントローラーでこれを行うロジックがあります。
- リストが表示されると、関連するリストがサイドバーに表示されます。どのリストが関連しているかを判断するロジックはコントローラーにあります。
今私の質問に:
- 上記の例で、モデルに属するコントローラーに現在あるロジックのインスタンスであると考えて、正しい方向に進んでいますか?
- モデルに入れる必要がある、Web アプリに共通のロジックの他の領域は何ですか?
- この問題を特定し、設計パターンを変更することは、戦いの半分であると確信していますが、上で示した例を取り上げて、そのロジックをモデルに移そうと決めたとしても、どこから始めればよいかわかりません。ここにコードを投稿したり、優れた学習リソースにリンクしたりして、誰かが私を正しい方向に向けることができますか? CakePHP 固有のヘルプは素晴らしいですが、MVC で十分であると確信しています。
php - CakePHP APP クラスを使用して URL から XML ファイルをロードするにはどうすればよいですか?
CakePHP XmlHelper を使用して、次のような XML ファイルを解析しています。
http://www.site.com/file.xmlのような URL から XML ファイルをロードするにはどうすればよいですか?
ありがとう!
php - CakePHP は Ruby on Rails とどう違うのですか?
Rails という単語をすぐに聞かずに、CakePHP という単語を聞くことはほとんどありません。これらの 2 つのフレームワークは、MVC モデルへの準拠方法に基づいて主に類似していますか、それとも他に重要な類似点/相違点がありますか?
Rails の主な魅力の 1 つは、Ajax を簡単に実行できることです。それはCakePHPにも当てはまりますか?
css - CakePHP の CSS ファイル内で URL がどのように処理され、正しい場所を参照するようになっていますか?
CSS ファイルを頻繁に使用して Web サイトをデザインしていますが、背景画像、リスト内の箇条書きの画像がいくつかあり、おそらく cssurl()
関数の別の必要性が見つかるでしょう。
しかし、cake では、すべての URL をRoute::url()
関数で処理する必要があります。いくつかの方法で、最も一般的なのは$html->url()
しかし、私の問題は、CSS ファイルが PHP によって解釈されないことです。次のようなものを含む CSS ファイルを作成する方法:
私の最後のオプションは、css ファイルをレイアウト上にインラインでインポートして、解釈できるようにすることです。しかし、私はより「ケーキ」なアプローチを使用することを強く好みます。
ありがとう!
jquery-ui - JQuery UIテーマをCakePHPに表示するにはどうすればよいですか?
CakePHPアプリケーションのJQueryUIテーマの表示に問題があります。テーマをapp/webroot / lib /jquery.ui/に配置しました。レイアウトで、次を使用してテーマをインポートしました。
DatePickerウィジェットを使用しています。私のページでは、フォーカスされたときにテキストボックスに日付ピッカーが表示されていましたが、テーマが適切に適用されていませんでした。背景画像が見えません。DatePickerにいくつかの変更(フォント、間隔など)が表示されているので、テーマ(またはcss)がインポートされていることを知っています。背景画像が見えませんでした。
これが私の問題と関係があるかどうかはわかりませんが、YUIも使用しています。
php - CakePHP がクエリのすべての行をフェッチするのを止めることはできますか?
$modelName->find(...) 呼び出しで CakePHP を使用して、かなりの数の行 (数百になる可能性があります) を選択しています。
通常、PHP/MySQL ではもちろんこれは問題になりません。while ループでフェッチするからです。しかし、CakePHP はすべての行を配列にロードし、メモリ制限を使い果たします。
$modelName->find(...) コンストラクトを使用する方法はありますが、必要に応じて各行をフェッチするイテレータを返しますか?
ありがとう、デビッド