2016-10-11 6 views
0

私は問題がある、私は会社のためのシステムを書いており、できるだけ堅牢な&であることが欲しいが、今は頑張っている。 私は、ログインした従業員が製品の仕様を編集、削除、または発行(印刷)できる製品リストを持っています。ページ間に商品IDを渡す

私はそのシステムのログインしている従業員だとしましょう。製品リストから製品をクリックし、emit(print)をクリックすると、JavaScriptを使用してPOSTを介して次のページにデータが送信されます(はい、ページの設計上、JSでなければなりません)。

したがって、次のページにはその製品に関する正しい情報が表示されます(POSTは製品IDを次のページに渡したため、SQLクエリが実現され、すべての情報が取得されたためです)。

このページでは、すべての情報が正しいかどうかを確認し、再度emit(print)をクリックすると、最終的に仕様を印刷できます。しかしここで私は注意書きに出くわしました:次のページはどのように製品IDを知っていますか?

クッキーはそのようなもののために設計されていますが、同じブラウザに2つのタブでログインしてから、両方のタブで同時に印刷すると同じCookieが2回呼び出され、2回上書きされ(競合)、その結果、製品IDが交換される可能性があります。

$_SESSION 2人のユーザーが同じマシンにログオンしていると、クッキーのようにデータがスワップされる可能性があるため、私も使用できません。

同じマシン上で複数の同時ユーザーをサポートするページ間、さらには同じブラウザ内でもデータを渡す「ベストプラクティス」とは何ですか?

+1

を見てください。 –

+0

@SteevePitis素晴らしいアプローチ。私はそれを探している間、さらに良い解決策を見つけました: 'セッション記憶'。それは素敵な答えなので、もし私があなただったら、私はこの質問に「答える」でしょう。ありがとう、これはまだ最もクリーンな解決策であるようです。 – Fusseldieb

答えて

0

このやや似質問は私の問題を解決しました: Any way to identify browser tab in JavaScript? 私は、そのタブのためのユニークな「emitID」を作成し、現在の製品IDのトラックを取るためにそれを使用することができますこの方法を。

@SteevePitisのおかげで正しい方向に向いてくれました。

関連する問題