【 tulaoshi.com - Web开发 】
                             
                            代码如下:
?php
// signup.php
// demonstrates a simple multipage form using xajax
// and the xajax.getFormValues() function.
// using xajax version 0.1 beta4
// http://xajax.sourceforge.net
session_start();
include ("xajax.inc.php");
function processForm($aFormValues)
{
        if (array_key_exists("username",$aFormValues))
        {
                return processAccountData($aFormValues);
        }
        else if (array_key_exists("firstName",$aFormValues))
        {
                return processPersonalData($aFormValues);
        }
}
function processAccountData($aFormValues)
{
        $objResponse = new xajaxResponse();
        $bError = false;
        if (trim($aFormValues['username']) == "")
        {
                $objResponse-addAlert("Please enter a username.");
                $bError = true;
        }
        if (trim($aFormValues['newPass1']) == "")
        {
                $objResponse-addAlert("You may not have a blank password.");
                $bError = true;
        }
        if ($aFormValues['newPass1'] != $aFormValues['newPass2'])
        {
                $objResponse-addAlert("Passwords do not match.  Try again.");
                $bError = true;
        }
        if (!$bError)
        {
                $_SESSION = array();
                $_SESSION['newaccount']['username'] = trim($aFormValues['username']);
                $_SESSION['newaccount']['password'] = trim($aFormValues['newPass1']);
                $sForm = "form id="signupForm" action="javascript:void(null);" onsubmit="submitSignup();"";
                $sForm .="divFirst Name:/divdivinput type="text" name="firstName" //div";
                $sForm .="divLast Name:/divdivinput type="text" name="lastName" //div";
                $sForm .="divEmail:/divdivinput type="text" name="email" //div";
                $sForm .="div class="submitDiv"input id="submitButton" type="submit" value="done"//div";
                $sForm .="/form";
                $objResponse-addAssign("formDiv","innerHTML",$sForm);
                $objResponse-addAssign("formWrapper","style.backgroundColor", "rgb(67,149,97)");
                $objResponse-addAssign("outputDiv","innerHTML","$_SESSION:pre".var_export($_SESSION,true)."/pre");
        }
        else
        {
                $objResponse-addAssign("submitButton","value","continue -");
                $objResponse-addAssign("submitButton","disabled",false);
        }
        return $objResponse-getXML();
}
function processPersonalData($aFormValues)
{
        $objResponse = new xajaxResponse();
        $bError = false;
        if (trim($aFormValues['firstName']) == "")
        {
                $objResponse-addAlert("Please enter your first name.");
                $bError = true;
        }
        if (trim($aFormValues['lastName']) == "")
        {
                $objResponse-addAlert("Please enter your last name.");
                $bError = true;
        }
        if (!eregi("^[a-zA-Z0-9]+[_a-zA-Z0-9-]*(.[_a-z0-9-]+)*@[a-z??????0-9]+(-[a-z??????0-9]+)*(.[a-z??????0-9-]+)*(.[a-z]{2,4})$", $aFormValues['email']))
        {
                $objResponse-addAlert("Please enter a valid email address.");
                $bError = true;
        }
        if (!$bError)
        {
                $_SESSION['newaccount']['firstname'] = $aFormValues['firstName'];
                $_SESSION['newaccount']['lastname'] = $aFormValues['lastName'];
                $_SESSION['newaccount']['email'] = $aFormValues['email'];
                $objResponse-addAssign("formDiv","style.textAlign","center");
                $sForm = "Account created.br /Thank you.";
                $objResponse-addAssign("formDiv","innerHTML",$sForm);
                $objResponse-addAssign("formWrapper","style.backgroundColor", "rgb(67,97,149)");
                $objResponse-addAssign("outputDiv","innerHTML","$_SESSION:pre".var_export($_SESSION,true)."/pre");
        }
        else
        {
                $objResponse-addAssign("submitButton","value","done");
                $objResponse-addAssign("submitButton","disabled",false);
        }
        return $objResponse-getXML();
}
$xajax = new xajax();
//$xajax-debugOn();
$xajax-registerFunction("processForm");
$xajax-processRequests();
?
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
html
        head
                ?php $xajax-printJavascript(); ?
                style type="text/css"
                #formWrapper{
                        color: rgb(255,255,255);
                        background-color: rgb(149,67,97);
                        width: 200px;
                }
                #title{
                        text-align: center;
                        background-color: rgb(0,0,0);
                }
                #formDiv{
                        padding: 25px;
                }
                .submitDiv{
                        margin-top: 10px;
                        text-align: center;
                }
                /style
                script type="text/javascript"
                function submitSignup()
                {
                        xajax.$('submitButton').disabled=true;
                        xajax.$('submitButton').value="please wait...";
                        xajax_processForm(xajax.getFormValues("signupForm"));
                        return false;
                }
                /script
        /head
        body
                div id="formWrapper"
                        div id="title"Create a New Account/div
                        div id="formDiv"
                                form id="signupForm" action="javascript:void(null);" onsubmit="submitSignup();"
                                        divUsername:/divdivinput type="text" name="username" //div
                                        divPassword:/divdivinput type="password" name="newPass1" //div
                                        divConfirm Password:/divdivinput type="password" name="newPass2" //div
                                        div class="submitDiv"input id="submitButton" type="submit" value="continue -"//div
                                /form
                        /div
                /div
                div id="outputDiv"
                /div
        /body
/html