Ingrese texto en el cuadro de texto. Introducción y prueba de PHP ajax framework xajax
1. Comparación de xajax y otros frameworks ajax.
¡La función xajax es muy simple, pero muy flexible! ~ No es como otros frameworks grandes. Sus funciones son realmente poderosas, pero su velocidad de ejecución no puede ser elogiada. . Aunque tiene muchas funciones, no es lo suficientemente flexible. Hay tantas API que aprenderlas es como aprender un nuevo idioma.
2. Introducción a las funciones xajax
La función de xajax es relativamente simple, pero debido a su simplicidad, es flexible. Al mismo tiempo, esto también requiere que los usuarios tengan cierta comprensión de los scripts del cliente javascrīpt/vbs. Porque su función es relativamente animada. Se puede decir que no se puede hacer nada simplemente usando xajax, pero todo se puede hacer con js/vbs.
Xajax utiliza principalmente la clase xajaxResponse, que proporciona algunos métodos, por ejemplo:
1. agregar alerta ($ sMsg)
advertencia emergente
2. agrega script ($sJS)
Ejecutar una determinada pieza de js.
3. $objResponse->addAssign("","","")
Adjunte un valor a un elemento de la página, modifique sus propiedades, etc. . . .
Entonces xajax no está muerto y no puede realizar funciones XXX XXX, pero puede controlar de manera flexible los js/vbs del cliente para lograr el efecto que queremos lograr.
3. La instalación y configuración de Xajax no requiere instalación ni configuración especiales. Simplemente descargue su paquete de archivos y descomprímalo en el directorio de descarga del sitio web:
http://www.xajaxproject.org/
3. Utilice xajax para registrarse como miembro e iniciar sesión
1. La base de datos usa mysql5.0, el nombre de la base de datos es zl y el nombre de la tabla es estructura de tabla zl_user
id int(11) incremento_automático
zl_user varchar(50)
zl_pwdvarchar(50)
correo electrónico varchar(50)
2. archivo de registro reg.php (con instrucciones)
<?php
require_once("inc/xajax.inc.php");
//Para usar xajax, primero debes introducir xajax.inc.php
$xajax = nuevo xajax("inc/signup.php");
//Crea un objeto xajax para singup.php
$xajax->registerFunction("procesoForm");
//Usa la función ProcessForm en singup.php
?>
<cabeza>
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312" />
<link rel="stylesheet" href=" http://blogbeta.blueidea.com/css/style.css " _fcksavedurl="" http://blogbeta.blueidea.com/css/style.css "" type=" texto/css">
<título>Documento sin título</título>
<?php $xajax->printJavascrīpt('inc/');
<scrīpt tipo="text/javascrīpt">
función enviarRegistro()
{
xajax.$('submitButton').disabled=true;
xajax.$('submitButton').value=" http://blogbeta.blueidea.com/wait ...";
//Modifica el atributo con ID submitButton
xajax_processForm(xajax.getFormValues("signupForm"));
//Aquí xajax_ va seguido de qué función usar. Aquí está ProcessForm, seguido de una colección de elementos del formulario SignupForm.
devolver falso;
}
</script>
</cabeza>
<cuerpo><form id="signupForm" action="javascrīpt:void(null);" ōnSubmit="submitSignup();">
<div id="principal">
<div id="m1">Registro de usuario</div>
<div id="formDiv">
<table width="100%" border="0" cellspace="0" cellpadding="5">
<tr>
<td align="derecha"> </td>
<td> </td>
</tr>
<tr>
<td width="31%" align="right">Nombre de usuario:</td>
<td ancho="69%"><nombre de entrada="usr" tipo="texto" id="usr" />
*</td>
</tr>
<tr>
<td align="right">Contraseña:</td>
<td><nombre de entrada="contraseña" tipo="contraseña" id="contraseña" />
*</td>
</tr>
<tr>
<td align="right">Contraseña:</td>
<td><nombre de entrada="pwd2" tipo="contraseña" id="pwd2" />
*</td>
</tr>
<tr>
<td align="right">Correo electrónico:</td>
<td><nombre de entrada="correo electrónico" tipo="texto" id="correo electrónico" />
* Puede usarse para recuperar la contraseña</td>
</tr>
<tr align="centro">
<td colspan="2"><tipo de entrada="enviar" nombre="enviarBotón" valor="Enviar" clase="botón" />
<tipo de entrada="reset" nombre="Submit2" value="Reset" class="botón" //></td>
</tr>
</tabla>
</div>
</div>
</formulario>
</cuerpo>
</html>
Después de hacer clic en enviar, ejecute la función 3 de ProcessForm en singup.php
, inc/singup.php
<?php
definir ('XAJAX_DEFAULT_CHAR_ENCODING', 'gb2312');
// Tenga en cuenta que se debe configurar gb2312; de lo contrario, el chino será confuso
require_once("xajax.inc.php");
require_once("función.php");
$xajax = nuevo xajax();
$xajax->registerFunction("procesoForm");
//Igual que
la función del archivo reg.php ProcessForm($aFormValues)
{
$objResponse = nueva xajaxResponse();
require_once("conn.php");
$usr=$aFormValues['usr'];
$correo electrónico=$aFormValues['correo electrónico'];
$pwd=$aFormValues['pwd'];
$pw=Md5($pwd);
$errmsg="";
//Caracteres ilegales a filtrar
$ArrFiltrate=array("'",";","union");
foreach($aFormValues as $key=>$value){
si (FunStringExist($valor,$ArrFiltrate)){
$objResponse->addAlert("La información ingresada contiene caracteres ilegales"' ; union!"");
$objResponse->addAssign("submitButton","valor","continuar");
$objResponse->addAssign("submitButton","disabled",false);
devolver $objRespuesta;
}
}
si (recortar($usr) == "")
{
$errmsg.="¡Ingrese su nombre de usuario!n";
}
si (recortar($contraseña) == "")
{
$errmsg.="¡Por favor ingrese su contraseña!n";
}
si ($pwd != $aFormValues['pwd2'])
{
$errmsg.="¡Las contraseñas ingresadas dos veces son inconsistentes!n";
}
si (!CheckEmailAddr($correo electrónico))
{
$errmsg.="¡La dirección de correo electrónico es incorrecta!n";
}
$sql="seleccione * de zl_usr donde zl_usr='$usr'";
$resultado=mysql_query($sql,$db);
si($myrow=mysql_fetch_array($resultado)){
$errmsg.="¡El nombre de usuario ya existe!n";
}
si ($errmsg=="")
{
$sForm = "Registro exitoso<br>Nombre de usuario:".$usr."<br>correo electrónico:".$correo electrónico."";
$sql="insertar en zl_usr(zl_usr,zl_pwd,email) valores('$usr','$pw','$email')";
$resultado=mysql_query($sql,$db);
$objResponse->addAssign("formDiv","innerHTML",$sForm);
}
demás
{
$objResponse->addAlert($errmsg);
//Mensaje de error emergente
$objResponse->addAssign("submitButton","valor","continuar");
//Modificamos el valor de submitButton para continuar
$objResponse->addAssign("submitButton","disabled",false);
//Modificar las propiedades del botón submitButton
}
devolver $objRespuesta;
}
$xajax->procesoSolicitudes();
?>
La validez de la información se juzga en este archivo, incluyendo: si el nombre de usuario ha sido registrado, si hay caracteres ilegales en la información, si la dirección de correo electrónico es correcta, si las contraseñas ingresadas dos veces son consistentes y si hay no hay errores, se ingresan en la base de datos y.
$objResponse->addAssign("formDiv","innerHTML",$sForm);
Vuelva a insertar el código en formDiv con el contenido $sForm
$sForm = "Registro exitoso<br>Nombre de usuario:".$usr."<br>correo electrónico:".$correo electrónico.""
;
$objResponse->addAlert($errmsg);
//Mensaje de error emergente
$objResponse->addAssign("submitButton","valor","continuar");
$objResponse->addAssign("submitButton","disabled",false);
//Modificar los atributos de submitButton
3. archivo de inicio de sesión login.php
<?php
require_once("inc/xajax.inc.php");
$xajax = nuevo xajax("inc/login.php");
$xajax->registerFunction("procesoForm");
?>
<cabeza>
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312" />
<link rel="stylesheet" href=" http://blogbeta.blueidea.com/css/style.css " _fcksavedurl="" http://blogbeta.blueidea.com/css/style.css "" type=" texto/css">
<título>Documento sin título</título>
<?php $xajax->printJavascrīpt('inc/');
<scrīpt tipo="text/javascrīpt">
función enviarRegistro()
{
xajax.$('submitButton').disabled=true;
xajax.$('submitButton').value=" http://blogbeta.blueidea.com/wait ...";
xajax_processForm(xajax.getFormValues("signupForm"));
devolver falso;
}
</script>
</cabeza>
<cuerpo><form id="signupForm" action="javascrīpt:void(null);" ōnSubmit="submitSignup();">
<div id="principal">
<div id="m1">Inicio de sesión de usuario</div>
<div id="formDiv">
<table width="100%" border="0" cellspace="0" cellpadding="5">
<tr>
<td align="derecha"> </td>
<td> </td>
</tr>
<tr>
<td width="31%" align="right">Nombre de usuario:</td>
<td ancho="69%"><nombre de entrada="usr" tipo="texto" id="usr" />
*</td>
</tr>
<tr>
<td align="right">Contraseña:</td>
<td><nombre de entrada="contraseña" tipo="contraseña" id="contraseña" />
*</td>
</tr>
<tr align="centro">
<td colspan="2"><tipo de entrada="enviar" nombre="enviarBotón" valor="Enviar" clase="botón" />
<tipo de entrada="reset" nombre="Submit2" value="Reset" class="botón" //></td>
</tr>
</tabla>
</div>
</div>
</formulario>
</cuerpo>
</html>
4. inc/login.php archivo de procesamiento de inicio de sesión
<?php
definir ('XAJAX_DEFAULT_CHAR_ENCODING', 'gb2312');
require_once("xajax.inc.php");
require_once("función.php");
$xajax = nuevo xajax();
$xajax->registerFunction("procesoForm");
función procesoForm($aFormValues)
{
$objResponse = nueva xajaxResponse();
require_once("conn.php");
$usr=$aFormValues['usr'];
$correo electrónico=$aFormValues['correo electrónico'];
$pwd=$aFormValues['pwd'];
$pw=Md5($pwd);
$errmsg="";
//Caracteres ilegales a filtrar
$ArrFiltrate=array("'",";","union");
foreach($aFormValues as $key=>$value){
si (FunStringExist($valor,$ArrFiltrate)){
$objResponse->addAlert("La información ingresada contiene caracteres ilegales"' ; union!"");
$objResponse->addAssign("submitButton","valor","continuar");
$objResponse->addAssign("submitButton","disabled",false);
devolver $objRespuesta;
}
}
si (recortar($usr) == "")
{
$errmsg.="¡Ingrese su nombre de usuario!n";
}
si (recortar($contraseña) == "")
{
$errmsg.="¡Por favor ingrese su contraseña!n";
}
$sql="seleccione * de zl_usr donde zl_usr='$usr' y zl_pwd='$pw'";
$resultado=mysql_query($sql,$db);
if(!$myrow=mysql_fetch_array($resultado)){
$errmsg.="¡El nombre de usuario no existe o la contraseña es incorrecta!n";
}
si ($errmsg=="")
{
$sForm = "Inicio de sesión exitoso";
$objResponse->addAssign("formDiv","innerHTML",$sForm);
}
demás
{
$objResponse->addAlert($errmsg);
$objResponse->addAssign("submitButton","valor","continuar");
$objResponse->addAssign("submitButton","disabled",false);
}
devolver $objRespuesta;
}
$xajax->procesoSolicitudes();
?>
Los principios de inicio de sesión y registro son similares, así que no más tonterías :)
Además, los siguientes son los dos códigos de archivo utilizados conn.php function.php
conexión.php
<?php
$database="zl";//nombre de la base de datos MYSQL
$db = mysql_connect("127.0.0.1", "root","123456");//nombre de usuario y contraseña de la base de datos MYSQL
mysql_select_db($base de datos,$db);
?>
función.php
<?php
función CheckEmailAddr($C_mailaddr)
{
si (!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+ )*$",
$C_mailaddr))
{
devolver falso;
}
devolver verdadero;
}
//Si hay un valor en la matriz
función FunStringExist($StrFiltrate,$ArrFiltrate){
foreach ($ArrFiltrate como $clave=>$valor){
si (eregi($valor,$StrFiltrate)){
devolver verdadero;
}
}
devolver falso;
}
?>