Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Codigo xajax no funciona.

Estas en el tema de Codigo xajax no funciona. en el foro de Frameworks JS en Foros del Web. primer tema que hago aqui y es para que alguien me pueda explicar ya que no se mucho del tema de ajax entonces aqui dejo ...
  #1 (permalink)  
Antiguo 29/01/2012, 14:27
 
Fecha de Ingreso: octubre-2011
Ubicación: Tierra
Mensajes: 64
Antigüedad: 7 años, 4 meses
Puntos: 0
Pregunta Codigo xajax no funciona.

primer tema que hago aqui y es para que alguien me pueda explicar ya que no se mucho del tema de ajax entonces aqui dejo el codigo para que alguien me explique q pasa porque me genera a la hora de abrir la pagina un poco de letras que estan en el codigo como si no cogiera bien el ajax.

codigo que encontre en un sitio:
<?
//incluímos la clase ajax
require ('xajax/xajax_core/xajax.inc.php');

//instanciamos el objeto de la clase xajax
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
$xajax->decodeUTF8InputOn();

function procesar_formulario($form_entrada){
//creo el xajaxResponse para generar una salida
$respuesta = new xajaxResponse('ISO-8859-1');

//validación
$error_form = "";
if ($form_entrada["nombre"] == "")
$error_form = "Debes escribir tu nombre";
elseif ($form_entrada["apellidos"] == "")
$error_form = "Debes escribir tus apellidos";
elseif (!isset($form_entrada["acepto"]))
$error_form = "Debes aceptar los términos y condiciones";

//compruebo resultado de la validación
if ($error_form != ""){
//Hubo un error en el formulario
//en la capa donde se muestran mensajes, muestro el error
$respuesta->addAssign("mensaje","innerHTML","<span style='color:red;'>$error_form</span>");
}else{
//es que no hubo error en el formulario
$salida = "Hemos procesado esto:<p>";
$salida .= "Nombre: " . $form_entrada["nombre"];
$salida .= "<br>Apellidos: " . $form_entrada["apellidos"];

//mostramos en capa mensaje el texto que está todo correcto
$respuesta->addAssign("mensaje","innerHTML","<span style='color:blue;'>Todo correcto... Muchas gracias!</span>");
//escribimos en la capa con id="capaformulario" el texto que aparece en $salida
$respuesta->addAssign("capaformulario","innerHTML",$salida) ;

//tenemos que devolver la instanciación del objeto xajaxResponse
}
return $respuesta;
}
//registramos la función creada anteriormente al objeto xajax
$xajax->registerFunction("procesar_formulario");

//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequests();
?>
<html>
<head>

<title>Enviar y procesar un formulario con Ajax y PHP</title>
<?
//En el <head> indicamos al objeto xajax se encargue de generar el javascript necesario
$xajax->printJavascript("xajax/");
?>
</head>

si alguien me puede ayudar selo agradeceria porque ningun codigo con ajax me funciona miren lo que me sale en el navegador:


setCharEncoding('ISO-8859-1'); $xajax->decodeUTF8InputOn(); function procesar_formulario($form_entrada){ //creo el xajaxResponse para generar una salida $respuesta = new xajaxResponse('ISO-8859-1'); //validación $error_form = ""; if ($form_entrada["nombre"] == "") $error_form = "Debes escribir tu nombre"; elseif ($form_entrada["apellidos"] == "") $error_form = "Debes escribir tus apellidos"; elseif (!isset($form_entrada["acepto"])) $error_form = "Debes aceptar los términos y condiciones"; //compruebo resultado de la validación if ($error_form != ""){ //Hubo un error en el formulario //en la capa donde se muestran mensajes, muestro el error $respuesta->addAssign("mensaje","innerHTML","$error_form"); }else{ //es que no hubo error en el formulario $salida = "Hemos procesado esto:
"; $salida .= "Nombre: " . $form_entrada["nombre"]; $salida .= "
Apellidos: " . $form_entrada["apellidos"]; //mostramos en capa mensaje el texto que está todo correcto $respuesta->addAssign("mensaje","innerHTML","Todo correcto... Muchas gracias!"); //escribimos en la capa con id="capaformulario" el texto que aparece en $salida $respuesta->addAssign("capaformulario","innerHTML",$salida) ; //tenemos que devolver la instanciación del objeto xajaxResponse } return $respuesta; } //registramos la función creada anteriormente al objeto xajax $xajax->registerFunction("procesar_formulario"); //El objeto xajax tiene que procesar cualquier petición $xajax->processRequests(); ?> indicamos al objeto xajax se encargue de generar el javascript necesario $xajax->printJavascript("xajax/"); ?>

y me sale lo de html bien con los cuadrops y todo pero no funciona nada
  #2 (permalink)  
Antiguo 31/01/2012, 06:10
Avatar de omar1977  
Fecha de Ingreso: abril-2006
Mensajes: 178
Antigüedad: 12 años, 11 meses
Puntos: 4
Respuesta: Codigo xajax no funciona.

Hola.....
creo que tienes un problema de aperturas y cierres de las llaves php y html
<? ?>, revisa eso, yo copie tal cual y tube que ordenarlo... una recomendacion...
cuando hagas sentencias de comparacion o ciclos siempre usa {}, para el inicio y termino de los bloques de codogo, esto te ayudara en el orden del codigo y para una posterior modificacion.

ap para el xajax usa esta sentencia para que veas los errores en tiempo de ejecusion
Código PHP:
Ver original
  1. $xajax->configure ( 'debug',true );
colocala asi

Código PHP:
Ver original
  1. $xajax = new xajax();
  2. $xajax->setCharEncoding('ISO-8859-1');
  3. $xajax->decodeUTF8InputOn();
  4. $xajax->configure ( 'debug',true );
__________________
no hay nadie que sea tan inutil, por ultimo sirve como mal ejemplo

Etiquetas: ajax, formulario, funcion, html, input, javascript, php, xajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:03.