CakePHP(2.1.2)のデータ持ち回りについての質問です。

現在、案件登録画面を作成しています。
機能例:
「入力欄1」:案件名
「入力欄2」:クライアントID 「検索ボタン」:別画面(画面遷移でも可)に一覧表示
「表示枠」:クライアント名(クライアントIDの入力があった場合に表示)
「入力欄3」:受注日
「入力欄4」:売上見込
Submit:登録ボタン

このクライアントIDの検索ボタンの実装の仕方で質問です。
検索ボタンを押すと別画面(画面遷移でも可)にクライアントIDとクライアント名の一覧が表示され、
そこでIDをクリックすると元の画面にIDとクライアント名が表示されるようにしたいと思って
います。この場合のデータの持ち運びでつまづいています。
Sessionで持ちまわるのか、hiddenなのか…。実装にあたっての考え方でも構いません。
初歩的な質問で大変申し訳ございませんが、よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/06/13 14:20:42

ベストアンサー

id:windofjuly No.1

回答回数2625ベストアンサー獲得回数1149

一例(画面遷移です)

入力画面はセッション変数を読み込んでフォームを埋めるようにしておき、
さらに1つのform内に2つのsubmitボタンを設置するようにします。

<input type="submit" name="search" value="検索" />
<input type="submit" name="entry" value="登録" />

パラメータを受け取る側は、
受け取ったパラメータをセッション変数に保存した後に、
searchが存在したら検索として一覧表示、
entryが存在したら登録という具合に処理を分けます。

別画面にする場合は、ブラウザ毎の対応が要求されるので、
予算が大いに取れるとか、マンパワーが余ってるといったような好条件でなければ、
選ばないほうがいいと個人的には思います。

id:misa44

widofjuly様
早速のご回答ありがとうございます。
画面遷移にて試してみたところ希望通りの動きが実現しました。
とても感謝しています。本当にありがとうございました。

2012/06/13 14:21:52
  • id:tdoi
    JavaScriptの利用はOKですか?
  • id:misa44
    tdoi様

    早速のコメントありがとうございます。
    はい。JavaScript可能です。
    よろしくお願いいたします。
  • id:tdoi
    であれば、僕なら、別画面の決定ボタンの処理で、元画面のJavaScriptをキックして、パラメタとして渡しますね。
    サーバを介する必要がなければですが。
    必要であっても、元画面の方で何かすればいいでしょうし。
  • id:misa44
    tdoi様
    ご返信ありがとうございます。
    PHP側でと考えていまい、JavaScriptでの実装を考えていませんでした。
    今回は、セッションで対応しましたが、今後は、幅広い実装方法を考えようと思います。
    本当にありがとうございました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません