Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/12/2008, 12:48
Avatar de pabloaltamirano22
pabloaltamirano22
 
Fecha de Ingreso: junio-2008
Ubicación: Viena
Mensajes: 203
Antigüedad: 15 años, 10 meses
Puntos: 5
Respuesta: Problema al extraer el valor de un textarea

Hola,

muchas gracias por responderme, la cuestion es que estoy enviando los datos por medio de la funcion mail().

aunque el codigo es un poco largo es entendible, lo dejo a ver que me pueden sugerir

Código PHP:
<?php
//incluímos la clase ajax
require_once ("xajax/xajax_core/xajax.inc.php");

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

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

//funcion para procesar los datos del formulario
function procesar_formulario($form_entrada){
   
//creo el xajaxResponse para generar una salida
   
$respuesta = new xajaxResponse();
   
$respuesta->setCharacterEncoding('ISO-8859-1');

   
$destinatario "[email protected]";
   
$nombre $form_entrada["nombre"];
   
$email $form_entrada["email"];
   
$asunto $form_entrada["asunto"];
   
   
//validación
   
$error_form "";
    if (
$nombre == "")
        
$error_form "Por favor escribe tu nombre";
    elseif (
$email == "")
      
$error_form "Por favor escribe tu correo electronico";
    elseif (
$asunto == "")
      
$error_form "Por favor escribe el asunto del mensaje";
      
   
//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->assign("mensaje","innerHTML","<span style='color:red;'>$error_form</span>");
   }else{
        
//es que no hubo error en el formulario
        //$salida = "Gracias $nombre por escribirnos, el mensaje $asunto sera respondido a la brevedad al correo electronico $email";
        
        //////// Esta linea es solo para ver el valor del textarea "mensaje", así como está me da un error
        
$salida $mensaje;
        
/////////////////////////////////////////////////////////////////
        
        
$headers "From $nombre $email\n";
      
        
//mostramos en capa mensaje el texto que está todo correcto
        
$respuesta->assign("mensaje","innerHTML","<span style='color:blue;'>Mensaje enviado correctamente</span>");
        
//escribimos en la capa con id="capaformulario" el texto que aparece en $salida
        
$respuesta->assign("capaformulario","innerHTML",$salida);
   
        
//mail($destinatario,$asunto,$mensaje,$headers);
   
}
   
    
//tenemos que devolver la instanciación del objeto xajaxResponse
    
return $respuesta;
    
}

//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequest();
?>
<html>
<head>
   <title>Enviar y procesar un formulario con Ajax y PHP</title>
   <?php
   
//En el <head> indicamos al objeto xajax se encargue de generar el javascript necesario
   
$xajax->printJavascript("xajax/");
   
?>
</head>

<body>

<div id="mensaje">
<p>Completa los campos con tus datos, agrega tu mensage y el asunto y pulsa "Enviar"</p>
</div>
<div id="capaformulario">
<form id="formulario">
<table align="left" cellspacing="0" cellpadding="1" border="0" width=400>
<tr>
    <td><b>Nombre</b></td>
    <td><b>Correo electronico</b></td>
</tr>
<tr>
    <td><input type="text" name="nombre" maxlength="55" value="" size="28"></td>
    <td><input type="text" name="email" maxlength="55" value="" size="28"></td>
</tr>
<tr>
    <td><b>Asunto: </b></td>
</tr>
<tr>
    <td><input type="text" name="asunto" maxlength="55" value="" size="28"></td>
</tr>
<tr>
    <td><b>Mensaje</b></td>
</tr>
<tr>
    <td><textarea name="mensaje" rows="15" cols="55"></textarea></td>
</tr>
<tr>
    <td colspan="2" align="center"><input type="button" value="Enviar" onclick="xajax_procesar_formulario(xajax.getFormValues('formulario'))" /></td>
</tr>
</table>
</form>
</div>

</body>
</html>
Gracias de antemano
__________________
Paulo