Comunidad de diseño web y desarrollo en internet online

problemas enviando datos desde flash a PHP para 1 formulario

Citar            
MensajeEscrito el 08 Jul 2007 08:02 pm
bueno...llevo 3 semanas intentando hacer funcionar el php en mi servidory despues de conseguirlo... soy incapaz de hacer que el codigo php me coja los datos de flash y me los envie por correo.

La situacion es la siguiente:

El formulario esta hecho (podeis verlo en www.e-2.es ) los codigos son los siguientes por la parte del flash:

Código :

enviar.onRelease = function(){
   mensaje_txt.text = "Enviando su correo ...";
   enviarMail();
}
//Declaro las variables para enviar y para recibir
var envio_lv:LoadVars = new LoadVars();
var recibir_lv:LoadVars = new LoadVars();
//Función que envia el forumlario
function enviarMail() {
   envio_lv.nombre = nombre_txt.text;
   envio_lv.email = email_txt.text;
   envio_lv.cuerpo = comentario_txt.text;
   envio_lv.lloc = lloc_txt.text;
   envio_lv.dia = dia_txt.text;
   envio_lv.hora = hora_txt.text;
   envio_lv.sendAndLoad("email.php", recibir_lv, "POST");
   //Aqui ustedes pueden cambiar de form.php a form.asp dependiendo del servidor
   //que usen
}
//Función que procesa los datos recibidos del servidor
recibir_lv.onLoad = function(exito) {
   if (exito) {
      estado_txt.text = this.estado;
   } else {
      //Muestra un mensaje de error en negrita
      estado_txt.text = "Error en la aplicación de correo";
   }
};


La parte del php me la envio la empresa responsable del hosting y funcionar lo que es funcionar... va de perlas. El problema es que lo unico que hace es enviar un correo diciendo que...bueno...que funciona. el detalle es cuando yo intento cambiar el mensage de que funciona por el contenido de una celda del formulario (por ejemplo de la comentarios), que simplemente hace como si no existiera variable alguna...

ahi va el codigo en php. Las partes separadas por una doble linea de # son las lineas que he añadido yo para adaptarlo a mis necesidades:

Código :

<?php 
 
// Este ejemplo se ha creado usando un archivo de nombre email_send.php
//-------------------------------------------------------------------------------------------------------------------------------------------------------------
// Partiendo de la idea inicial del sitio de documentación de php en http://de.php.net/manual/en/ref.mail.php
// hemos modificado un ejemplo existente ahí y hemos creado este script que corre perfectamente en Strato...
//
// si desea probar este script al menos substituya la dirección del correo electrónico en la variable
//  $to_email    (cambiando el valor del email "[email protected]" por uno suyo para comprobarlo
// así puede usted simplemente poner en la URL de su navegador (Firefox, IExplorer) 
// http://midominio.es/email_send.php (***)
//      
// ***  claro que debe poner aquí el nombre de su dominio y descargar este script antes en el root/directorio 
//  principal de su alojamiento. Esto es un ejemplo simple y le toca a usted adecuarlo a su formulario...
//-------------------------------------------------------------------------------------------------------------------------------------------------------------

 # Tipo de Sistema operativo?  OS Windows or Mac or Linux
 if (strtoupper(substr(PHP_OS,0,3)=='WIN')) {
   $eol="\r\n";
 } elseif (strtoupper(substr(PHP_OS,0,3)=='MAC')) {
   $eol="\r";
 } else {
   $eol="\n";
 } 
 

 # Emilio de destino... 
 # Puede capturar valores como este enviados desde un formulario de contacto con instrucciones como:   
 #        $to_email=$HTTP_POST_VARS['destino'];

 $to_email="[email protected]";
 
#########################################
#########################################
# variables para las partes del mensage
 
 $nom = $_POST["nombre"];
 $contacte = $_POST["email"];
 $comentari = $_POST["comentario"];
 $dia = $_POST["dia"];
 $lloc = $_POST["lloc"];
 $hora = $_POST["hora"];

##########################################
##########################################
 
 # Dirección de correo del remitente (la suya)... 
 $from_nombre = "Mi Nombre";
 $from_email = "[email protected]";
 
 # Asunto del mensaje
 $emailsubject="PETICION DE PRESUPUESTO".date("Y/m/d H:i:s");
 
 # Cuerpo del mensaje
 
 //  ob_start();
 //  require("emailbody.php");    // Aquí puede especificar una bella página para que salga acompañando al script...
 //  $body=ob_get_contents(); ob_end_clean();
 $body="<b>Este es el cuerpo del correo electrónico en html <b>enviado desde <a href='mailto:$from_email'>$from_email</a>";
 
 # Encabezamiento
 $headers  = "From: $from_nombre <$from_email>".$eol;  // dirección del remitente-> la suya...
 $headers .= "Reply-To: $from_nombre <$from_email>".$eol;        // para especificar la dirección de reenvío (se puede dejar en blanco o no especificar)..
 $headers .= "Return-Path: $from_nombre <$from_email>".$eol;     // para especificar la dirección de respuesta
 $headers .= "Message-ID: <$now Sistema@".$_SERVER['SERVER_NAME'].">".$eol;
 $headers .= "X-Mailer: PHP v".phpversion().$eol; 
 
 // Esto ayuda a eliminar los spams...
 # Boundry for marking the split & Multitype Headers
 $mime_boundary=md5(time());
 $headers .= 'MIME-Version: 1.0'.$eol;
 $headers .= "Content-Type: multipart/related; boundary=\"".$mime_boundary."\"".$eol;
 $msg = "";
 
 # Adjunto
 //  $msg .= "--".$mime_boundary.$eol;
 //  $msg .= "Content-Type: application/pdf; name=\"".$archivo_adjunto."\"".$eol;  // sometimes i have to send MS Word, use 'msword' instead of 'pdf'
 //  $msg .= "Content-Transfer-Encoding: base64".$eol;
 //  $msg .= "Content-Disposition: attachment; filename=\"".$archivo_adjunto."\"".$eol.$eol; // !! This line needs TWO end of lines !! IMPORTANT !!
 //  $msg .= $f_contents.$eol.$eol;
 
 # Configuración de texto o html...
 $msg .= "Content-Type: multipart/alternative".$eol;
 
 # Versión de texto
 $msg .= "--".$mime_boundary.$eol;
 $msg .= "Content-Type: text/plain; charset=iso-8859-1".$eol;
 $msg .= "Content-Transfer-Encoding: 8bit".$eol;
 $msg .= "Este es un mensaje multi-part en formato MIME.".$eol;
##############################
##############################
 $msg .= "++ESTA ES UNA PRUEBA DE ENVIO DE E-MAIL MEDIANTE PHP++  $comentari";
##############################
##############################
 
 # Versión de HTML
 $msg .= "--".$mime_boundary.$eol;
 $msg .= "Content-Type: text/html; charset=iso-8859-1".$eol;
 $msg .= "Content-Transfer-Encoding: 8bit".$eol;
 $msg .= $body.$eol.$eol;
 
 # Terminando el email
 $msg .= "--".$mime_boundary."--".$eol.$eol;  //Terminando con dos eols para mejor seguridad. Ver Injection...
 
 # Enviar el email de forma tradicional usando la función mail()...
  ini_set(sendmail_from,$from_email);  // la dirección del email del remitente en el archivo de configuración .INI se cambia por la especificada aquí!!
    mail($to_email, $emailsubject, $msg, $headers);
  ini_restore(sendmail_from);
 
?>  


yo no tengo NI IDEA de php lo unico que se es lo que he semientendido de lo que he ido masticando mientras iva navegando con mi llate de lujo por la web... (osea hacer variables... :roll: )
Alguien me puede explicar que sucede? llevo dandole vueltas varios dias, estoy seguro que es una question de que he escrito algun codigo mal y lo corregiria yo mismo...si no fuera porque no se nada de php...

Muchas gracias gente...

Por Atomsk

350 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 09 Jul 2007 12:56 pm
en flash tienes:

Código :

envio_lv.cuerpo = comentario_txt.text;

y en php:

Código :

$comentari = $_POST["comentario"];

en php deberia ser:

Código :

$comentari = $_POST["cuerpo"];


y en la variable $body vas a utilizar $comentari

mira que lo que sea envia en verdad como contenido del mail es la variable $msg, asi que debes construirlo con lo que deseas en tu caso creo que es $comentari...

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 09 Jul 2007 03:53 pm
muchas gracias, iva a probarlo ahora pero...no me va el ftp ni de la web ni el progma ftp...porque sera?


:roll:

Por Atomsk

350 de clabLevel

3 tutoriales

 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.