Foros del Web » Programando para Internet » PHP »

¿que hago mal con este formulario?

Estas en el tema de ¿que hago mal con este formulario? en el foro de PHP en Foros del Web. Hola amigos una vez mas tengo problemitas con un formulario usando la funcion mail (phpmailer ya voy por ahi) el formulario que les muestro solo ...
  #1 (permalink)  
Antiguo 17/11/2006, 08:36
Avatar de JinSunMi  
Fecha de Ingreso: octubre-2006
Ubicación: Lima
Mensajes: 101
Antigüedad: 17 años, 6 meses
Puntos: 0
¿que hago mal con este formulario?

Hola amigos
una vez mas tengo problemitas con un formulario
usando la funcion mail (phpmailer ya voy por ahi)
el formulario que les muestro solo envia al correo destino:
las cabeceras, el mensaje, el remitente etc. pero no envia los campos contenidos dentro del formulario
y no entiendo que es lo que pasa
que hago mal?
me dan una manito?
Código PHP:
<?php
$para   
'[email protected]';
$asunto 'consulta';
$mensaje 'hola a todos';
$cabeceras 'From: Jin  ' "\r\n" ;

$nombre $_POST['nombre'] ; 
$apellidos $_POST['apellidos'];
$Email $_POST['correo'] ;
$Procedencia $_POST['procedencia'];
$Telefono $_POST['telefono'];
$Fax $_POST['fax'];
$Comentarios =$_POST ['comentarios'];
mail($para$asunto$mensaje$cabeceras);
?>
He tenido importantes ayudas en un form anterior pero resulta que cuando agrego las cabeceras tal como la ven aqui, no envia todos los datos del formulario.
que hago mal?
Jin
  #2 (permalink)  
Antiguo 17/11/2006, 08:42
Avatar de realandres  
Fecha de Ingreso: noviembre-2006
Mensajes: 59
Antigüedad: 17 años, 5 meses
Puntos: 0
coloca el codigo del formulario para poder ayudarte mejor
  #3 (permalink)  
Antiguo 17/11/2006, 08:42
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Código PHP:
$para   '[email protected]';
$asunto 'consulta';
$mensaje 'hola a todos';
$cabeceras 'From: Jin  ' "\r\n" ;

$cuerpo $_POST['nombre']."\r\n"
$cuerpo .= $_POST['apellidos']."\r\n";
$cuerpo .= $_POST['correo']."\r\n";
$cuerpo .= $_POST['procedencia']."\r\n";
$cuerpo .= $_POST['telefono']."\r\n";
$cuerpo .= $_POST['fax']."\r\n";
$cuerpo .= $_POST['comentarios']."\r\n\r\n";
mail($para$asunto$mensaje$cabeceras$cuerpo); 
Saludos
__________________
Hospedaje Web al mejor costo!
  #4 (permalink)  
Antiguo 17/11/2006, 08:58
Avatar de JinSunMi  
Fecha de Ingreso: octubre-2006
Ubicación: Lima
Mensajes: 101
Antigüedad: 17 años, 6 meses
Puntos: 0
no he aplicado aun la ayuda que me haz dado urgido
pero dime
en el correo destino yo necesito ver
los nombres de cada campo = igual dato ingresado

nombre = Juan
etc.
con tu propuesta sera asi?
Jin
  #5 (permalink)  
Antiguo 17/11/2006, 08:59
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
hehe asi es. Recuerda que los campos que tienes en el POST deben ser del mismo nombre que en tu form.
__________________
Hospedaje Web al mejor costo!
  #6 (permalink)  
Antiguo 17/11/2006, 09:10
Avatar de Erikfrancisco  
Fecha de Ingreso: noviembre-2003
Ubicación: Estado de México
Mensajes: 503
Antigüedad: 20 años, 5 meses
Puntos: 4
Pues yo diría que mejor todo lo metas en el mensaje y le das el formato que quieras con html. Sería algo así:
Código PHP:
<?php
// damos nombres cortos a las variables
$nombre $_POST['nombre'] ; 
$apellidos $_POST['apellidos'];
$Email $_POST['correo'] ;
$Procedencia $_POST['procedencia'];
$Telefono $_POST['telefono'];
$Fax $_POST['fax'];
$Comentarios =$_POST ['comentarios'];

$para   '[email protected]';
$asunto 'consulta';

// damos formato al mensaje puedes agregarle el html que quieras (colores, tipo de texto, etc)
$mensaje "<b>hola a todos</b><p>";
$mensaje .= "Nombre: ".$nombre."<br/>";
$mensaje .= "Apellidos: ".$apellidos."<br/>";
$mensaje .= "e-mail: ".$Email."<br/>";
$mensaje .= "Procedencia: ".$Procedencia."<br/>";
$mensaje .= "Telefono: ".$Telefono."<br/>";
$mensaje .= "Fax: ".$Fax."<br/>";
$mensaje .= "Comentarios: ".$Comentarios."<br>";
$mensaje .= "<p><b><font color=\"#FF0000\">Gracias por sus comentarios</font></b>";

$cabeceras 'From: Jin  ' "\r\n" ;

mail($para$asunto$mensaje$cabeceras);
?>
Como ves sólo hay que concatenar (eso lo haces con el .=) el contenido del mensaje y darle el formato que quieras. Espero que esto te haya servido de algo o por lo menos te de una idea. Suerte
  #7 (permalink)  
Antiguo 17/11/2006, 09:13
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Cita:
Iniciado por Erikfrancisco Ver Mensaje
Pues yo diría que mejor todo lo metas en el mensaje y le das el formato que quieras con html. Sería algo así:
Código PHP:
<?php
// damos nombres cortos a las variables
$nombre $_POST['nombre'] ; 
$apellidos $_POST['apellidos'];
$Email $_POST['correo'] ;
$Procedencia $_POST['procedencia'];
$Telefono $_POST['telefono'];
$Fax $_POST['fax'];
$Comentarios =$_POST ['comentarios'];

$para   '[email protected]';
$asunto 'consulta';

// damos formato al mensaje puedes agregarle el html que quieras (colores, tipo de texto, etc)
$mensaje "<b>hola a todos</b><p>";
$mensaje .= "Nombre: ".$nombre."<br/>";
$mensaje .= "Apellidos: ".$apellidos."<br/>";
$mensaje .= "e-mail: ".$Email."<br/>";
$mensaje .= "Procedencia: ".$Procedencia."<br/>";
$mensaje .= "Telefono: ".$Telefono."<br/>";
$mensaje .= "Fax: ".$Fax."<br/>";
$mensaje .= "Comentarios: ".$Comentarios."<br>";
$mensaje .= "<p><b><font color=\"#FF0000\">Gracias por sus comentarios</font></b>";

$cabeceras 'From: Jin  ' "\r\n" ;

mail($para$asunto$mensaje$cabeceras);
?>
Como ves sólo hay que concatenar (eso lo haces con el .=) el contenido del mensaje y darle el formato que quieras. Espero que esto te haya servido de algo o por lo menos te de una idea. Suerte
Creo que te faltaron datos de mucha importancia, no todos los servidores/proveedores interpretan html "por magia" se necesitan los headers.

Saludos
__________________
Hospedaje Web al mejor costo!
  #8 (permalink)  
Antiguo 17/11/2006, 09:25
Avatar de JinSunMi  
Fecha de Ingreso: octubre-2006
Ubicación: Lima
Mensajes: 101
Antigüedad: 17 años, 6 meses
Puntos: 0
No se que pasa
pero ya lo probè y ahora el mensaje no llega al correo (la primera ayuda)
no llega nada
que hago mal?
gracias erik
voy a probar
tambien el nuevo tuyo urgi
  #9 (permalink)  
Antiguo 17/11/2006, 09:32
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Código PHP:
$para   '[email protected]';
$asunto 'consulta';
$cabeceras 'From: Jin  ' "\r\n" ;

$cuerpo $_POST['nombre']."\r\n"
$cuerpo .= $_POST['apellidos']."\r\n";
$cuerpo .= $_POST['correo']."\r\n";
$cuerpo .= $_POST['procedencia']."\r\n";
$cuerpo .= $_POST['telefono']."\r\n";
$cuerpo .= $_POST['fax']."\r\n";
$cuerpo .= $_POST['comentarios']."\r\n";
mail($para$asunto$cuerpo$cabeceras); 
Aún asi te recomiendo le eches un ojo a la función mail() de php.

Saludos
__________________
Hospedaje Web al mejor costo!
  #10 (permalink)  
Antiguo 17/11/2006, 09:38
Avatar de JinSunMi  
Fecha de Ingreso: octubre-2006
Ubicación: Lima
Mensajes: 101
Antigüedad: 17 años, 6 meses
Puntos: 0
Amigos no entiendo nada
resulta que en el formulario que yo postee, el primero yo recibia el mensaje y solo leia las cabeceras, pero ahora, no se que ocurre que ya ni siquiera llega el mensaje a mi correo....no llega nada (a pesar de que sale la pagina de confirmacion de envio)
que hago mal???
perdonen por tanta molestia
Jin
Yo estoy sacando de aqui las cabeceras
http://www.php.net/manual/es/function.mail.php

Última edición por JinSunMi; 17/11/2006 a las 09:46
  #11 (permalink)  
Antiguo 17/11/2006, 10:24
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Código PHP:
$para   "tu@correo";
$asunto "consulta";
$cabeceras "From: [email protected]\r\n";

$_POST['nombre']=$nombre;
$_POST['apellidos']=$apellido;
$_POST['correo']=$correo;
$_POST['procedencia']=$proc;
$_POST['telefono']=$tel;
$_POST['fax']=$fax;
$_POST['comentarios']=$comen;

$cuerpo $nombre."\r\n";
$cuerpo .= $apellido."\r\n";
$cuerpo .= $correo."\r\n";
$cuerpo .= $proc."\r\n";
$cuerpo .= $tel."\r\n";
$cuerpo .= $fax."\r\n";
$cuerpo .= $comen."\r\n";

mail($para$asunto$cuerpo$cabeceras); 
Funciona correctamente, comprobado.

Saludos
__________________
Hospedaje Web al mejor costo!
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 06:55.