php - "States"在 JavaScript 或 PHP 中?

标签 php javascript html facebook apache-flex

我已经使用 FLEX 一段时间了,并且有一些“状态”声明。对于那些不确定我的意思的人,这就像您可以翻译几个不同的页面,设置当前状态。
现在我想开始Facebook开发,但我不知道如何在我用html创建的页面之间传递。我想使用 javascript 而不是 php 是可能的,但我不知道如何实现。有人可以帮帮我吗?

我想做的一个计划是:

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

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

以下示例显示了具有 2 种状态的登录面板:default 用于显示登录表单,Register 用于显示注册表单。当前状态更改由操作触发(在本例中为按Linkbutton)。主要是,状态所做的是根据用户在每种状态下应该能够执行的操作来显示适当的内容。因此,例如,如果我想做一个付款表单,在用户尝试付款后,如果付款成功完成,我将有一个“Thank_you”状态,而如果付款失败,我将有一个“Try_again”状态“状态。如何使用 php/js 来完成此操作?

login/register panel的代码示例(来自 adobe flex 网站,还可以在链接中找到运行示例和完整代码):

<!-- 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>

提前致谢

最佳答案

好的,我想我明白你的问题了。 Flex(或 Flash)与持续变量(或状态)一起工作,因为它是一个长期运行的程序,由用户界面的事件控制。

网络编程不是这样的。每个页面都是单独提供的,由一个仅在该请求持续时间内存在的程序提供,因此必须通过使用 cookie 在客户端维护状态。由于服务器经常需要了解用户状态,因此 cookie(如果设置了)由浏览器自动提供给服务器,服务器可以将 cookie 的值与该用户之前做过的事情进行交叉引用。

如果 cookie 值是唯一的,则它可用于交叉引用 session 存储,该 session 存储是仅针对一个用户的一组值。 PHP 在其 $_SESSION 功能中提供了此功能。这本身就是一个很大的主题,因此我建议在网络上搜索“PHP session 示例”(此处和网络上)并使用一些代码。真实的例子将向您展示这一切是如何运作的。

编辑:事实证明状态(变量)和状态(UI 变体)是不同的东西!请参阅评论了解更多详情。

关于php - "States"在 JavaScript 或 PHP 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15210001/

相关文章:

php语法错误如果条件

javascript - AngularJS 和侧边栏

javascript - jQuery 从下拉列表中选择值不起作用

javascript - 如何使用 Cloud Functions for Firebase 访问 uid?

html - CSS3 过渡似乎在动画期间修改 z-index

php - 在表单中使用两个文件控件时无法上传文件 - PHP

php - 创建在线 Web 界面以 dB 为单位存储消息并提供给最终用户,使用 PHP/MYSQL?

php - 显示和删除数据库中的数据

php - 用 unset() 替换 session_unregister

html - 标签的属性覆盖了它的父(div)?