Foros del Web » Programando para Internet » PHP »

mandar un formulario a un e-mail por php

Estas en el tema de mandar un formulario a un e-mail por php en el foro de PHP en Foros del Web. Necesiro ayuda, necesito mandar un formulario por php a un e-mail determinado, pero no consigo que lo mande a pesar de que no me da ...
  #1 (permalink)  
Antiguo 26/01/2004, 18:36
 
Fecha de Ingreso: noviembre-2003
Mensajes: 6
Antigüedad: 14 años, 1 mes
Puntos: 0
mandar un formulario a un e-mail por php

Necesiro ayuda, necesito mandar un formulario por php a un e-mail determinado, pero no consigo que lo mande a pesar de que no me da error alguno, gracias por ayudarme

primero el formulario lo tengo en formulario.html y es este:

<form method="post" action="correo.php">
De:
<br><input type="text" name="de" size="30">
<br>Para:
<br><input type=text name=para size=36>
<br>Asunto:
<br><input type=text name=asunto size=36>
<br>Cuerpo:
<br><textarea name="cuerpo" WRAP="physical" COLS="50" ROWS="12">
</textarea><br>
<input type=submit name=submit value=ENVIAR>
<input type=reset>
</form>

y el codigo php lo coloco en correo.php y es este:

<?
$para_quien="$para";
$titulo_correo="$asunto";

mail("$para_quien","$titulo_correo","Nombre: ".$de." "."Su correo: ".$de." "."Cuerpo: ".$cuerpo,"From: ".$de);

echo "Se ha enviado el mail...los datos son...";
echo "";
echo "";
echo "De: $de<br>";
echo "Para: $para<br>";
echo "Asunto: $asunto<br>";
echo "Cuerpo: $cuerpo<br>";
echo "<br> ";
echo "Gracias por utilizar nuestros servicios.";
?>

soy nuevo en esto de la programación, y se que tengo que hacer algo mal, pero no lo veo. Muchas gracias
  #2 (permalink)  
Antiguo 27/01/2004, 09:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Primero, tu problema es con PHP normal para la web, no para PHP-GTK, que es para hacer aplicaciones de escritorio. Asi que muevo el mensaje al foro principal de PHP.

Segundo, que no muestre errores no quiere decir que no los haya. Pon:
[PHP]
error_reporting(E_ALL);
[PHP]
al comienzo de correo.php. Y tambien valida el valor devuelto por mail(), si es false es que se produjo un error:
Código PHP:
if (mail("$para_quien","$titulo_correo","Nombre: ".$de." "."Su correo: ".$de." "."Cuerpo: ".$cuerpo,"From: ".$de)) {

echo 
"Se ha enviado el mail...los datos son...";
echo 
"";
echo 
""
echo 
"De: $de<br>";
echo 
"Para: $para<br>";
echo 
"Asunto: $asunto<br>";
echo 
"Cuerpo: $cuerpo<br>";
echo 
"<br> "
echo 
"Gracias por utilizar nuestros servicios.";
} else {
  echo 
"se produjo un error y no se pudo enviar el email.";

Tambien seria de ayuda saber en que servidor lo tienes alojado (sistema operativo, version), y los valores de las directivas relacionadas con mail() (ver www.php.net/mail). Puede ser un fallo de configuracion.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 27/01/2004, 12:47
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 14 años, 3 meses
Puntos: 4
con tu pesima ortografia ...

hola

con tu pesima ortografia lo tuyo se parece a mis codigos.

Lo priemro es controlar que cuando erscribis en html no te falten las comillas.

<input Type=text> se escribe
<input type="text">

asi para todo el campo.

lo otro mas o menos importante es lo siguiente:

la función mail() creo que la comprendes bastante bien:

mail("a_quien_va","asunto","texto","From: [email protected]");

Cuando tratas de enviar información de tus formularios por mail generalmente no importa la estetica.
Supongamos que tenes las siguientes variables:_
$nombre
$apellido
$telefono
$direccion
$email
Todas ellas vienen de tu (seguramente vistoso) Formulario:

el metodo: POST
la acción: enviar.php

podes darle un formato unpoco mas trabajadito siprimero creas una variable llamada (por ejemplo) $mensaje

$mensaje="
<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"57%\" id=\"AutoNumber1\">
<tr>
<td width=\"50%\"><font face=\"Arial\" size=\"1\">Nombre</font></td>
<td width=\"50%\">&nbsp;</td>
</tr>
<tr>
<td width=\"50%\"><font face=\"Arial\" size=\"1\">Apellido</font></td>
<td width=\"50%\">&nbsp;</td>
</tr>
<tr>
<td width=\"50%\"><font face=\"Arial\" size=\"1\">Direccion</font></td>
<td width=\"50%\">&nbsp;</td>
</tr>
<tr>
<td width=\"50%\"><font face=\"Arial\" size=\"1\">e-mail</font></td>
<td width=\"50%\">&nbsp;</td>
</tr>
</table>";

// y luego sila fucion mail

Mail("[email protected]","$subjet","$mensaje ","from: [email protected]");

y bueno, ahi mas o menos la idea


en realidad es pa que el guille vea como funciona esto.
sorry a los demas,
y disculpen si otra vez me fui al carajo.


__________________
[email protected] <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
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.
Tema Cerrado

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 15:19.