2011-08-13 8 views
1

ZendセッションからPHPネイティブページセッションにvariabilesを渡すことは可能でしょうか? URLを介して変数を送信したくないため、2つのページは同じドメインの同じサーバー上にあります。 Thx !! Zendのフレームワークdocumentation for basic session usageそれがその州でZENDページからPHPネイティブページにセッション経由で渡される変数

+0

Zendのドキュメントを読んでいるようですが、これはZendセッションの基本機能ページです。 StackOverflowでは、質問をする前にいくつかの調査を行うと、それを飾ります。 –

答えて

2

Zend_Session_Namespaceのインスタンスは、Zend Frameworkの 操作セッションデータのための主要なAPIを提供しています。名前空間は ですべてのセッションデータを分離しますが、すべてのセッションデータに対して1つの名前空間のみを必要とするユーザーは という既定の名前空間が存在します。 Zend_Sessionはext/sessionとその特別な$ _SESSION スーパーグローバルをセッション状態データの記憶機構として利用します。$ _SESSIONはPHPのグローバル名前空間で引き続き使用できますが、開発者 はZend_Sessionと Zend_Session_Namespaceが最も効果的かつ安全にそのセッション関連機能スイートを提供できるように、直接アクセスすることを控えるべきです。

Zend_Session_Namespaceの各インスタンスは、 $ _SESSIONスーパーグローバル配列のエントリに対応し、名前空間がキーとして使用されます。

$myNamespace = new Zend_Session_Namespace('myNamespace'); 

// $myNamespace corresponds to $_SESSION['myNamespace'] 

が直接$ _SESSIONを使用していることを他のコードと一緒ににZend_Sessionを使用することが可能です。しかし、問題を避けるためには、 は、 がZend_Session_Namespaceのインスタンスに対応していない$ _SESSIONの部分のみを使用することをお勧めします。

session_start(); 
$_SESSION['name'] = 'myname'; 

と2番目のページへ:

session_start(); 
echo $_SESSION['name'] 

、すべてが正常に動作します私はいつも書いた私の古典的なPHPで

+0

私は昨日、Zendセッションのページを10回読みましたが、私は概念を理解していません。申し訳ありません。 – Augusto

+0

これは非常に基本的なもので、PHPでどのくらいプログラミングしていますか? –

0

。 (私は理解している場合) 今Zendのページに私が書く必要があります:

$myNamespace = new Zend_Session_Namespace('myname'); 

が、第2 PHPのネイティブページで

? 混乱している...申し訳ありません、ありがとうございます。

ps。もちろん、ブートストラップにはZend_Session::start()があります。

+0

私は私の状況を明らかにするDvid M.私はVBのプログラマーですが、何らかの理由で先週私は学校のアンケート、約120の質問をしなければなりませんでした。もちろん、私はhtml、cssを知っています。私はいくつかのPHPベースコマンドを知っているので、joomlaサイトを使用して変更します。 私はフォームがたくさんあるシンプルなPHPスクリプトを作成し、内部のすべてのコントロールを使って、mysqlなどで書いています。 しかし、私の仲間は、この小さなプログラムを別のzendプログラム(私のものではない)に含めるように私に頼んだが、私はzendを知らない。 その後、私はzendを学び始めました.1日後、Zend_Formなどを使って最初の小さなzendフォームを作成しました。 ... – Augusto

+0

しかし、あまりにも長いので、古いPHPプログラムをzendに翻訳してiframe A Zendへ)。だから私は友人の善良なサイトのページ(A)からのすべての変数(名前、学校、パスワードなど)をtmy PHPのネイティブアンケートページ(B)に渡す必要があります。私がセッションの前に行った唯一の使用例は、次のとおりです:<?php session_start(); if($ _SESSION ['displayname'] == ""){ヘッダ( "Location:index.php"); }私の場合は、誰かが名前を付けずにページを完成させようとしているかどうかを確認するために、セッションコントロールを使用します。 – Augusto

+0

セッション開始()でセッションを開く前の私の古いページでこれを行うには session_start(); $ _SESSION ['displayname'] = $ _POST [displayname]; など と、ページ(B)に変数$ _SESSION ['displayname']を上記のwiteとして使用します。 しかし、私は実際にzendで同じことをする方法を理解していません。 私はそれが簡単だと知っていますが、2日間のエラーの後で私は狂っています。 ありがとうございます。 – Augusto

関連する問題