1

私はしばらくFLEXを扱ってきましたが、いくつかの「状態」宣言がありました。私が何を意味するのかわからない人のために説明すると、それは、現在の状態を設定して、翻訳できるいくつかの異なるページのようなものです.
これから Facebook の開発を始めたいのですが、html で作成したページ間の受け渡しの方法がわかりません。PHPではなくJavaScriptを使用すると可能だと思いますが、方法がわかりません。誰か助けてくれませんか?

私がやりたいことのスキームは次のとおりです。

              tigger1  
State A-------------------->State B

              trigger2      
State B-------------------->State C

default次の例は、ログイン フォームを表示するための と、登録用のフォームを表示するための2 つの状態を持つログイン パネルを示していますRegister。現在の状態の変更は、アクション (この場合は を押すLinkbutton) によってトリガーされます。主に、状態が行うことは、ユーザーが各状態で実行できる必要があることに基づいて、適切なコンテンツを表示することです。たとえば、支払いフォームを実行したい場合、ユーザーが支払いを試みた後、支払いが正常に行われた場合は「Thank_you」状態になり、支払いが失敗した場合は「Try_again」状態になります" 州。php/jsを使用してこれを行うにはどうすればよいですか?

ログイン/登録パネルのコード サンプル(adobe flex Web サイトから、実行例と完全なコードもリンクにあります):

<!-- The Application class states property defines the view states.-->
<s:states>
    <s:State name="default"/>    
    <s:State name="Register"/>
</s:states>

<!-- Set title of the Panel container based on the view state.-->
<s:Panel id="loginPanel" 
    title="Login" title.Register="Register">     

    <s:Form id="loginForm">
        <s:FormItem label="Username:">
            <s:TextInput/>
        </s:FormItem>
        <s:FormItem label="Password:">
            <s:TextInput/>
        </s:FormItem>


        <s:FormItem id="confirm" label="Confirm:" includeIn="Register">
            <!-- Add a TextInput control to the form ONLY for the Register view state. -->           
            <s:TextInput/>
        </s:FormItem>            

        <s:FormItem>            
            <!-- Use the LinkButton to change view state.-->
                <!-- Set label of the control based on the view state.-->
                <mx:LinkButton id="registerLink"
                    label="Need to Register?" 
                    label.Register="Return to Login"
                    click="currentState="Register"
                    click.Register="currentState="default"/>
                <s:Button id="loginButton" 
                    label="Login" label.Register="Register"/>
        </s:FormItem>            
    </s:Form>
</s:Panel>

前もって感謝します

4

1 に答える 1

1

そうですね、私はあなたの質問を理解していると思います。Flex (または Flash) は、実行時間の長いプログラムであり、ユーザー インターフェイスからのイベントによって制御されるため、進行中の変数 (または状態) で動作します。

Webプログラミングはそうではありません。各ページは、そのリクエストの間だけ存在するプログラムから個別に提供されるため、Cookie を使用してクライアント側で状態を維持する必要があります。サーバーは多くの場合、ユーザーの状態を認識する必要があるため、Cookie (設定されている場合) はブラウザーによってサーバーに自動的に提供され、サーバーは Cookie の値をこのユーザーが以前に行ったことと相互参照できます。

Cookie の値が一意である場合は、1 人のユーザーだけの値のセットであるセッション ストアを相互参照するために使用できます。PHP は、その$_SESSION機能内でこれを提供します。これはそれ自体が非常に大きなトピックなので、ここや Web で「PHP セッションの例」を Web 検索し、いくつかのコードを試してみることをお勧めします。実際の例で、すべてがどのように機能するかを示します。

編集: 状態 (変数) と状態 (UI バリアント) は別のものであることが判明しました! 詳細については、コメントを参照してください。

于 2013-03-04T20:33:32.247 に答える