Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/03/2011, 05:03
Jeibi
 
Fecha de Ingreso: noviembre-2007
Ubicación: Madrid
Mensajes: 96
Antigüedad: 16 años, 5 meses
Puntos: 2
Valores del formulario llegan vacios con XAJAX al servidor

Hola a todos,

estoy teniendo un problema con mi proyecto. Resulta que en local me funciona bien pero al subirlo al servidor no. Envío un formulario por XAJAX y al recibir los datos estos están vacios.

Este es mi código:

Código PHP:
<?php
include "comunes/iniciar.php";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" >
<head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250" />
  <meta name="generator" content="PSPad editor, www.pspad.com" />
  <title>Nouvelle Stetic: Cont&aacute;ctanos</title>
  <script type="text/javascript" src="js/comun.js"></script>
  <link rel="stylesheet" href="css/style.css" />
  <?php
   $xajax
->printJavascript('xajax');
    
?>
</head>
  <body>
    <form id="formContacta" action="sended.php" method="post">
        <div id="campos">
            <ul id="formIzq">
                <li class="ancho_20">Nombre &nbsp;<span class="error">*</span></li><li class="ancho_30"><input type="text" name="nombre" id="nombre" value="" /></li><li class="ancho_40 error" id="errNombre"></li>
                <li class="ancho_20">Tel&eacute;fono &nbsp;<span class="error">*</span></li><li class="ancho_30"><input type="text" name="telef" id="telef" value="" /></li><li class="ancho_40 error" id="errTelef"></li>
            </ul>
            <ul id="formDer">
                <li class="ancho_20">Empresa </li><li class="ancho_30"><input type="text" name="empresa" id="empresa" value="" /></li><li class="ancho_40 error" id="errEmpr">&nbsp;</li>
                <li class="ancho_20">Email &nbsp;<span class="error">*</span></li><li class="ancho_30"><input type="text" name="email" id="email" value="" /></li><li class="ancho_40 error" id="errEmail"></li>
            </ul>
            <ul id="formCen">    
                <li class="ancho_20">Mensaje &nbsp;<span class="error">*</span></li><li class="ancho_80"><textarea name="mensaje" id="mensaje" rows="7" cols="45"></textarea></li>
                <li class="ancho_20">&nbsp;</li><li class="ancho_40 error" id="errMensaje"></li>
            </ul>
        </div>
        <div id="botonAceptar">
           <input type="button" value="Enviar" onclick="limpiar();xajax_procesar_formulario(xajax.getFormValues('formContacta'))" />
        </div>                                                          
    </form>
  </body>
</html>
iniciar.php
Código PHP:
<?php
//incluímos la clase ajax
require('xajax/xajax_core/xajax.inc.php'); 
 
include 
'comunes/validar.php';
$xajax = new xajax(); 

$xajax->configure('decodeUTF8Input',true);
$xajax->configure('javascript URI','xajax/');

//registramos la función creada anteriormente al objeto xajax
$xajax->register(XAJAX_FUNCTION,"procesar_formulario");
$xajax->processRequest();

?>
validar.php
Código PHP:
function procesar_formulario($form_entrada){
   
//instanciamos el objeto para generar la respuesta con ajax
   
$respuesta = new xajaxResponse();
   
   
$recp "";
    
   
/* validación de los datos */
   
   //Valido el nombre   
   
if($form_entrada["nombre"]==""){
      
$salida "Debes introducir un Nombre";   
      
//$respuesta->call("estiloMensaje","error");   
      
$recp "errNombre";
      
$respuesta->assign($recp"innerHTML"$salida);
   }
   
   
//Valido el teléfono
   
if($form_entrada["telef"]==""){
      
$salida "Debes introducir un Tel&eacute;fono";   
      
//$respuesta->call("estiloMensaje","error");   
      
$recp "errTelef";
      
$respuesta->assign($recp"innerHTML"$salida);
   }else if (!
is_numeric($form_entrada["telef"])) {
      
$salida "El formato del teléfono no es correcto";   
      
//$respuesta->call("estiloMensaje","error");   
      
$recp "errTelef";
      
$respuesta->assign($recp"innerHTML"$salida);  
   }
   
   
//Valido el Email
   
if($form_entrada["email"]==""){
      
$salida "Debes introducir un Email";   
      
//$respuesta->call("estiloMensaje","error");   
      
$recp "errEmail";
      
$respuesta->assign($recp"innerHTML"$salida);
   }else if (!
preg_match(
      
'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
      
$form_entrada["email"])) {
      
$salida "El formato del Email no es correcto";   
      
//$respuesta->call("estiloMensaje","error");   
      
$recp "errEmail";
      
$respuesta->assign($recp"innerHTML"$salida);
   }
   
   
//valido el mensaje
   
if($form_entrada["mensaje"]==""){
      
$salida "Debes introducir un Mensaje";   
      
//$respuesta->call("estiloMensaje","error");   
      
$recp "errMensaje";
      
$respuesta->assign($recp"innerHTML"$salida);
   }
   
   
//Envío la respuesta
   
if($recp==""){
   
    
$enviado sendEmail($form_entrada);
    if(
$enviado){
      
$respuesta->call("sendOk");
    }
    
   }
    
   
//tenemos que devolver la instanciación del objeto xajaxResponse
   
return $respuesta;  

Creo que el código está bien, pues en local me funciona, pero igual me falta algo de configuración. Si alguien me puede echar una mano..

gracias