Comunidad de diseño web y desarrollo en internet online

problemas 2 formularios en una web

Citar            
MensajeEscrito el 06 Mar 2009 02:20 am
He creado una pagina con dos formularios, uno de contacto y otro como par ameter un curriculum.Ambos en as2 y dentro de la misma pagina en flash.
Reslta que el de contacto si funciona, pero el del curriculum no, sew queda enviando y no llega el correo.
La unica linea de codigo dentro del flash que llama al php es esta:

Código :

stop();
loadVariables("send_email.php" + random(1000), this, "POST");
message_status.text = "Enviando...";

y en la otra es send_email2.php
el send_email.php es

Código :

<?php
$contact_name = $_POST['name'];
$contact_empresa = $_POST['empresa'];
$contact_email = $_POST['email'];
$contact_subject = $_POST['subject'];
$contact_message = $_POST['message'];

if( $contact_name == true )
{
   $sender = $contact_email;
   $receiver = "[email protected]";
   $client_ip = $_SERVER['REMOTE_ADDR'];
   $email_body = "Nombre: $contact_name \nEmpresa: $contact_empresa \nEmail: $sender \nAsunto: $contact_subject \nMensaje: $contact_message \nIP: $client_ip \n Formulario Web";      
   $extra = "From: $sender\r\n" . "Reply-To: $sender \r\n" . "X-Mailer: PHP/" . phpversion();

   if( mail( $receiver, "Formulario Web - $contact_subject", $email_body, $extra ) ) 
   {
      echo "success=yes";
   }
   else
   {
      echo "success=no";
   }
}
?>

y el autorespuesta es:(que por cierto no funciona,pero bueno)

Código :

<?php
$contact_name = $_POST['name'];
$contact_empresa = $_POST['empresa'];
$contact_email = $_POST['email'];
$contact_subject = $_POST['subject'];
$contact_message = $_POST['message'];

if( $contact_name == true )
{
   $sender = $contact_email;
   $receiver = "[email protected]";
   $client_ip = $_SERVER['REMOTE_ADDR'];
   
   $email_body = "Nombre: $contact_name \nEmpresa: $contact_empresa \nEmail: $sender \nAsunto: $contact_subject \nMensaje: $contact_message \nIP: $client_ip \n Formulario Web";
   $email_body_auto_reply = "Hola $contact_name, \nNo conteste a este mensaje,es una respuesta automática. \nAdmin - http://www.i.com";
   
   $extra = "From: $sender\r\n" . "Reply-To: $sender \r\n" . "X-Mailer: PHP/" . phpversion();
   $extra_auto_reply = "From: $receiver\r\n" . "Reply-To: $receiver \r\n" . "X-Mailer: PHP/" . phpversion();
   
   mail( $sender, "Auto Reply - Re: $contact_subject", $email_body_auto_reply, $extra_auto_reply );   // auto reply mail to sender

   if( mail( $receiver, "Formulario Web - $contact_subject", $email_body, $extra ) )
   {
      echo "success=yes";
   }
   else
   {
      echo "success=no";
   }
}

Los php del curriculum son iguales, pero cambiando los campos, nombre direccion, telefono, vehiculo......y renobrados como send_mail2.php y auto_response_mail2.php

Una pregunta de ignorante como yo, ¿se pueden poner palabras con acento tal cual dentro del php?
Ej ,dirección: $contact_direccion

Por pepito piscinas

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Mar 2009 05:55 am
No sera que te falta algo:

Código ActionScript :

stop();
loadVariables("send_email.php?nocache=" + random(1000), this, "POST");
message_status.text = "Enviando...";

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 06 Mar 2009 04:04 pm
nala le he puesto el ?nocache=, y pasa igual.¿podria ser que hubiera conflicto por estar los dos send_mail.php juntos en la misma carpeta?
de paso,¿ que hace el?nocache= ?

Por pepito piscinas

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Mar 2009 05:02 pm
H e revisado todos los campos de texto, y sus variables, pero no veo nada.He probado incluso a poner un formulario como externo en otra carpeta separando asi los send_mail.php, pero nada.
Os dejo los codigos por si veis algo que pueda hacer que no funcione, por que el de correo me funcionaba hasta sin poner el ?nocache=.
En flash
En un fotograma:

Código :

send_button.onRelease = submit;
reset_button.onRelease = reset;
function submit()
{
   if( contact_nombre.text == "" || contact_dni.text == "" ||
      contact_direccion.text == "" || contact_cp.text == "" || contact_localidad.text == "" || contact_telfijo.text == "" ||
      contact_telmovil.text == "" || contact_email.text == "" || contact_permiso.text == "" || contact_vehiculo.text == "" ||
      contact_fnac.text == "" || contact_lnac.text == "" || contact_civil.text == "" || contact_hijos.text == "" ||
      contact_formacion.text == "" || contact_experiencia.text == "" )
   {
      message_status.text = "Por favor, rellene todos lo campos.";
   }
   else if( contact_email.text.indexOf('@') < 2 || contact_email.text.indexOf('.') < 0 )
   {
      message_status.text = "Por favor, introduzca una dirección de correo válida.";
   }
   else
   {
      message_status.text = "";
      gotoAndStop("send");
   }
}
function reset()
{
   contact_nombre.text = contact_dni.text =
      contact_direccion.text = contact_cp.text = contact_localidad.text = contact_telfijo.text =
      contact_telmovil.text = contact_email.text = contact_permiso.text = contact_vehiculo.text =
      contact_fnac.text = contact_lnac.text =contact_civil.text = contact_hijos.text =
      contact_formacion.text = contact_experiencia.text ="" ;
   clearInterval(interval_id);
   gotoAndStop("stop");
}

En el forograma 10:

Código :

stop();
loadVariables("send_email2.php?nocache=" + random(1000), this, "POST");
message_status.text = "Enviando...";
var i = 0;
function check_status()
{
   if( success == "yes" )
   {
      message_status.text = "Su mensaje ha sido enviado.";
      play();
   }
   else if( success == "no" )
   {
      message_status.text = "Su mensaje no ha podido ser enviado, por favor inténtelo de nuevo.";
      gotoAndStop("stop");;
   }
   if( i >= 20 )
      clearInterval(interval_id);
   i++;
}
var interval_id = setInterval(check_status, 400);

Y en el 70

Código :

reset();
gotoAndStop("stop");
clearInterval(interval_id);


y este es el send_mail2.php

Código :

<?php
$contact_nombre = $_POST['nombre'];
$contact_dni = $_POST['dni'];
$contact_direccion = $_POST['direccion'];
$contact_cp = $_POST['cp'];
$contact_localidad = $_POST['localidad'];
$contact_telfijo = $_POST['telfijo'];
$contact_telmovil = $_POST['telmovil'];
$contact_email = $_POST['email'];
$contact_permiso = $_POST['permiso'];
$contact_vehiculo = $_POST['vehiculo'];
$contact_fnac = $_POST['fnac'];
$contact_lnac = $_POST['lnac'];
$contact_civil = $_POST['civil'];
$contact_hijos = $_POST['hijos'];
$contact_formacion = $_POST['formacion'];
$contact_experiencia = $_POST['experiencia'];

if( $contact_name == true )
{
   $sender = $contact_email;
   $receiver = "[email protected]";
   $client_ip = $_SERVER['REMOTE_ADDR'];
   $email_body = "Nombre: $contact_nombre \nDNI: $contact_dni \nDireccion: $contact_direccion \nC.P.: $contact_cp \nLocalidad: $contact_localidad \nTel.Fijo: $contact_telfijo \nTel.Móvil: $contact_telmovil \nEmail: $sender \nPermiso Conducir : $contact_permiso \nVehículo Propio: $contact_vehiculo \nFecha de Nacimiento: $contact_fnac \nLugar de Nacimiento: $contact_lnac \nEstado civil: $contact_civil \nNº de Hijos: $contact_hijos \nFormación Académica: $contact_formacion \nExperiencia: $contact_experiencia \nIP: $client_ip \n Curriculum Web";      
   $extra = "From: $sender\r\n" . "Reply-To: $sender \r\n" . "X-Mailer: PHP/" . phpversion();

   if( mail( $receiver, "Curriculum Web - $contact_subject", $email_body, $extra ) ) 
   {
      echo "success=yes";
   }
   else
   {
      echo "success=no";
   }
}
?>


y send_email2_auto_response

Código :

<?php
$contact_nombre = $_POST['nombre'];
$contact_dni = $_POST['dni'];
$contact_direccion = $_POST['direccion'];
$contact_cp = $_POST['cp'];
$contact_localidad = $_POST['localidad'];
$contact_telfijo = $_POST['telfijo'];
$contact_telmovil = $_POST['telmovil'];
$contact_email = $_POST['email'];
$contact_permiso = $_POST['permiso'];
$contact_vehiculo = $_POST['vehiculo'];
$contact_fnac = $_POST['fnac'];
$contact_lnac = $_POST['lnac'];
$contact_civil = $_POST['civil'];
$contact_hijos = $_POST['hijos'];
$contact_formacion = $_POST['formacion'];
$contact_experiencia = $_POST['experiencia'];


if( $contact_name == true )
{
   $sender = $contact_email;
   $receiver = "[email protected]";
   $client_ip = $_SERVER['REMOTE_ADDR'];
   
   $email_body = "Nombre: $contact_nombre \nDNI: $contact_dni \nDireccion: $contact_direccion \nC.P.: $contact_cp \nLocalidad: $contact_localidad \nTel.Fijo: $contact_telfijo \nTel.Móvil: $contact_telmovil \nEmail: $sender \nPermiso Conducir : $contact_permiso \nVehículo Propio: $contact_vehiculo \nFecha de Nacimiento: $contact_fnac \nLugar de Nacimiento: $contact_lnac \nEstado civil: $contact_civil \nNº de Hijos: $contact_hijos \nFormación Académica: $contact_formacion \nExperiencia: $contact_experiencia \nIP: $client_ip \n Curriculum Web";
   $email_body_auto_reply = "Hola $contact_name, \nNo conteste a este mensaje,es una respuesta automática. \nAdmin - http://www.xxx.com";
   
   $extra = "From: $sender\r\n" . "Reply-To: $sender \r\n" . "X-Mailer: PHP/" . phpversion();
   $extra_auto_reply = "From: $receiver\r\n" . "Reply-To: $receiver \r\n" . "X-Mailer: PHP/" . phpversion();
   
   mail( $sender, "Auto Reply - Re: $contact_subject", $email_body_auto_reply, $extra_auto_reply );   // auto reply mail to sender

   if( mail( $receiver, "Curriculum Web - $contact_subject", $email_body, $extra ) )
   {
      echo "success=yes";
   }
   else
   {
      echo "success=no";
   }
}
?>

Por pepito piscinas

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 06 Mar 2009 10:13 pm
Lo del nocache, es lo que pense que intetabas hacer cuando colocas random(1000), eliminar el chache, cosa que es inutil, en un php no hay problema alguno, tu con tu random, generabas una salida asi: sendemail.php726 lo cual es una ruta incorrecta. segundo: $contact_name no existe, nunca sera igual a true, porque no existe, revisa bien los nombres de las variables. Suerte

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 06 Mar 2009 11:55 pm
Wuao!!muchas gracias, eso era, resulta que al copiar el send_mail.php y editarlo para adaptarlo al send_mail2.php, me deje esos dos contact_name sin reemplazar por contact_nombre
Ahora perfecto muchas gracias otra vez.

Por pepito piscinas

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 07 Mar 2009 12:06 am
Otra vez yo, ahora me surge un problema, que las palabras que se introducen con acentos y Ñ, me llegan con carácteres raros, como ñ o ó.
En flash le he indicado en cada texto que incorpore caracteres de puntuacion, Mayusculas , latin etc....

Por pepito piscinas

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 07 Mar 2009 12:36 am
Asi deben estar declaradas tus cabeceras

Código PHP :

$extra = "From: $sender\r\n" . "Reply-To: $sender\r\n" . "X-Mailer: PHP/" . phpversion() . "\r\n";
$extra .= "Content-type: text/html; charset=UTF-8\r\n";


Puede ser tambien iso-8859-1 en lugar de UTF-8

Espero que eso resuelva el problema. Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 07 Mar 2009 01:11 am
Si otra vez mas yo , he puesto lo que me has dicho en las cabeceras, y si se solucionan las Ñ y acentos, pero, lo que antes recibia el mail asi:
Nombre:
Apellidos:
direccion:

ahora lo recibo asi:
Nombre: Apellidos: Direccion....

He probado a poner el Iso, pero veuelven a salir mal las ñ y acentos, y tambien a quitar el . \r\n, que hay detras de php.version, ya que esto se diferenciaba del mio, pero vuelven las ñ y acentos raros.

Por pepito piscinas

106 de clabLevel



 

msie
Citar            
MensajeEscrito el 07 Mar 2009 01:28 am
ok, solucionado, he tenido que sustituir los /n por <br>
espero que ya este todo.Muchas gracias amigo.

Por pepito piscinas

106 de clabLevel



 

msie

 

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