2011-07-12 11 views
0

私はPHPとZendが新しく、ログインしたユーザーに関する機密データをキャッシュしたいと思います。問題は、ユーザーがこのデータの値を変更できるようにしたくないため、保存方法がわからないことです。Zendの機密データの保持

ユーザーがログインした後でZend_Registerに保存したかったのですが、これが正しい解決策ではないと思います。

Zend_Registry::set('ud', $userData); 

は、それから私は別のコントローラにデータを取得する:

$ud = Zend_Registry::get('ud'); 

これを行うための別の方法はありますか? ...事前に

感謝をクッキーに値を格納し、ハッシュとその整合性をチェックし、または設定アップサーバー側のキャッシュをセッションごとのように、 Jerec

+0

使用にZend_Session –

答えて

2

を使用..(ありませんこれが良い解決策ならば確かに?)。しかし、サーバが正しいを設定されている場合、セッションは保存する必要があります。..

+0

私はセッションで別の道を選びましたが、私は後で別の目的のためにそれを使用することができ、あなたの答えをありがとうございました。私はZend_Session :: regenerateId()を使用します。このIDをデータベース内のユーザー行に設定します。私は、同じセッションIDを生成する確率はわずかだと思う –

3

Zend_Registryは永続的なものではなく、それが目的ですアプリケーション内で一時的なデータを共有するためのもので、スクリプトの終了後に失われます。

あなたが永続的なデータが必要な場合、私はあなたがハッシュのいくつかの種類を使用することができますインテグリティの世話をするために、今すぐinteressting一部をZend_Sessionを

$session = new Zend_Session_Namespace('sensetive_data'); 
$session->name = 'User'; 
$session->email = '[email protected]'; 

を使用することをお勧めZend_Session

関連する問題