Foros del Web » Programando para Internet » PHP »

Enviar este mail!!! urgente! por fa.... si?

Estas en el tema de Enviar este mail!!! urgente! por fa.... si? en el foro de PHP en Foros del Web. DUDA: Cómo puedo hacer para enviar un mail desde una pagina PHP. Se debe hacer cuando se carga la pagina, en el load digamos. Porque ...
  #1 (permalink)  
Antiguo 29/11/2002, 05:34
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
Enviar este mail!!! urgente! por fa.... si?

DUDA:

Cómo puedo hacer para enviar un mail desde una pagina PHP.
Se debe hacer cuando se carga la pagina, en el load digamos.
Porque los datos ya han sido ingresados en la pagina anterior y se reciben en la llamada:

http://www.geogramma.it/cgi-lib/Scri...04&Pagamento=4

En estos parametros ya se encuentra el subject, la dirección de mail del cliente (que seria quien envia el mail), y el contenido (que son todos los que compre el cliente...variable, en este caso son dos articulos Articulo1 y Articulo2)

En el mail debo poner formateado todo de modo que se entienda... es decir, los datos del cliente, los articulos, todo lo que esta separado por & sería un dato a poner en una nueva linea...

Yo lei que se manda un mail asi:

<?php
mail($destinatario, $asunto, $mensaje, "From: $remitente");
?>

pero cómo hago para meter todos los datos que recibo, cómo los tomo? cómo formateo el mail?

Gracias!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Realmente es urgente para mi saber cómo hacer esto...asi que al "GENIO" que me ayude le voy a deber un favor.
__________________
Flavia.
  #2 (permalink)  
Antiguo 29/11/2002, 05:38
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
Yo no quería que fuera un link, sino mostrarles el contenido de lo que llega, es este:

"http://www.geogramma.it/cgi-lib/Script.php?TF=0&amoun=0&user=Geo&recipient=flavia@ hotmail.com&redirect=http%3A%2F%2Fwww.geogramma.it &subject=Un+Ordine+On-Line+%E8+stato+ricevuto%2C+secondo+il+seguente+det taglio%3A&title=Nuovo+Catalogo&bgcolor=C3C3C3&hcol or=404040&htexcolor=ffffff&mimeoff=0&invoice_numbe r=Numero+Ordine&gateway_text_one=Grazie.+Riceveret e+la+conferma+ordine+via+e-mail.&gateway_text_two=Vi+ringraziamo+per+il+vostr o+ordine.&gateway_text_three=Ordine+On-Line+ricevuto.+REPLY+per+inviare+il+messaggio+al+c liente&scramble_pad=&Nome=Pedro&Cognome=Garcia&Ind irizzo=Mitre+9090&Telefono=890890&Comune=Arge&Prov incia=Bs&CAP=8900&Nazione=Argentina&email=cliente@ mail.com&Articolo1=Il+Golfo+di+Venezia+e+Trieste+c od.6.5&Prezzo1=12.92&Quant1=1&Peso1=0.2&Totale1=++ +++12%2C92&Articolo2=La+Laguna+Veneta+cod.6.1&Prez zo2=12.92&Quant2=1&Peso2=0.2&Totale2=+++++12%2C92& Trasporti=5&TotalePeso=0.75&TotaleTrasporti=6.2&To taleFinale=32.04&Pagamento=4"

El problema es que desde esa pagina se accede al banco que permite el pago pero a mi me interesa que tambien me llegue a mi qué es lo que quiere el cliente... porque si no no sé que mandarle!!! se entiende?
Espero ayuda!!!
__________________
Flavia.
  #3 (permalink)  
Antiguo 29/11/2002, 15:11
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Pues puedes construir el mensaje con ayuda de los arrays $HTTP_GET_VARS o $_GET, dependiendo de la version. Seria algo asi:
Código PHP:
$mensaje='';
foreach (
$HTTP_GET_VARS as $parametro => $valor)
{
  
$mensaje.="$parametro : \t $valor \n";

Si tu version de PHP te lo permite, sustituye $HTTP_GET_VARS por $_GET.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #4 (permalink)  
Antiguo 02/12/2002, 04:34
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
GRACIAS!!!!!!!!!! Josemi

Ante todo GRACIAS! porque verdaderamente me sirvió tu respuesta.... funciona!!!
Ahora... me entusiasme... y quisiera formatear este mail de modo que todo llegue en una tabla de dos colores... y traté de hacerlo pero sin exito... me muestra el codigo en el mensaje, no lo toma como html...
Qué puedo hacer?
Pego acá mi código para que me diga alguien cuantos errores estoy cometiendo....

codigo php:


$from=$email;
$mensaje='';
$mensaje.="Content-Type: text\/html\; charset=us-ascii \n";
$mensaje.="MIME-Version: 1.0 \n";
$mensaje.="<body link=#\",$in{htexcolor},\" vlink=#\",$in{htexcolor},\">\n";
$mensaje.="--------------------------------------------------------------->\n";
$mensaje.="<table bgcolor=#\",$in{bgcolor},\" width=100\% cellpadding=20><td>\n";
$mensaje.="<center><table border width=85% bgcolor=#ffffff bordercolor=#000000 cellpadding=4 cellspacing=4>\n";
$mensaje.="<tr><th colspan=2 bgcolor=#\",$in{hcolor},\"><font face=\"arial\" size=2 color=#\",$in{htexcolor},\">\n";
$mensaje.="</font></th></tr>\n";
$mensaje.="<tr><td valign=\"top\"><font face=arial size=2>\",$invoice_text,\"</font></td><td valign=\"top\"><font face=arial size=2>\",$inv,\"</font></td></tr>";
$mensaje.="Nro. Ordine : \t $lee \n";
foreach ($HTTP_GET_VARS as $parametro => $valor)
{
$mensaje.="$parametro : \t $valor \n";
}
$mensaje.="<tr><th colspan=2 bgcolor=#\",$in{hcolor},\"><font face=\"arial\" size=2 color=#\",$in{htexcolor},\">\n";
$mensaje.="<a href=\"\",$in{'redirect'},\"\">\",$redir2,\"</a>\n";
$mensaje.="</font></th></tr>\n";
$mensaje.="</table></center></td></table><\/body><\/html>\n";

//if($mess) :
//echo "<table><tr><td style=\"font-family:verdana;font-size:10 pt\">
//<b>Il form non è stato inviato per errori.</b><br><br>
//</td></tr></table>";
//else :

$head="Modulo proveniente dal sito $HTTP_HOST\n\n\n";
$giorno=date("d/m/y");
$ora=date("H:i:s");
$foot="\n\nModulo compilato il $giorno alle ore $ora";
$foot.=" dall'IP $REMOTE_ADDR";

$contenuto=$head.$mensaje.$foot;
$subject.=" Nro. Ordine ".$lee;

mail($recipient,$subject,$contenuto, "From: <$from>\n". "Reply-To: <$from>\n");
__________________
Flavia.
  #5 (permalink)  
Antiguo 02/12/2002, 07:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Revisa bien las cabceras y parametros de mail() .. estas cabeceras que estas usando:

$mensaje.="Content-Type: text\/html\; charset=us-ascii \n";
$mensaje.="MIME-Version: 1.0 \n";
No son parte del mensaje .. sino de las cabeceras (del último parametro de mail() .. donde ahora tienes el FROM .. REPLY ..)


$cabeceras ="MIME-Version: 1.0 \n";
$cabeceras .="Content-Type: text\/html\; charset=us-ascii\n";
$cabeceras .="From: <$from>\n". "Reply-To: <$from>\n";

mail($recipient,$subject,$contenuto,$cabeceras);

Revisa:
http://us.php.net/manual/en/function.mail.php

Un saludo,
  #6 (permalink)  
Antiguo 02/12/2002, 07:56
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
Pregunta y ahora?

puse exactamente cómo me decís pero ... llega un mail con un archivo adjunto de tipo "texto" que contiene los datos...
qué está mal? Por favor!!

$from=$email;
$mensaje='';
$mensaje.="--------------------------------------------------------------->\n";
$mensaje.="<table bgcolor=#\",$in{bgcolor},\" width=100\% cellpadding=20><td>\n";
$mensaje.="<center><table border width=85% bgcolor=#ffffff bordercolor=#000000 cellpadding=4 cellspacing=4>\n";
$mensaje.="<tr><th colspan=2 bgcolor=#\",$in{hcolor},\"><font face=\"arial\" size=2 color=#\",$in{htexcolor},\">\n";
$mensaje.="</font></th></tr>\n";
$mensaje.="<tr><td valign=\"top\"><font face=arial size=2>\",$invoice_text,\"</font></td><td valign=\"top\"><font face=arial size=2>\",$inv,\"</font></td></tr>";
$mensaje.="RIASSUNTO ORDINE: \n";
$mensaje.="Nro. Ordine : \t $lee \n";
$mensaje.="Modalita' di Pagamento: Carta di Credito \n";
foreach ($HTTP_GET_VARS as $parametro => $valor)
{
if(!in_array($parametro, $nascosti))
{
$mensaje.="$parametro : \t $valor \n";
}
}

$mensaje.="<tr><th colspan=2 bgcolor=#\",$in{hcolor},\"><font face=\"arial\" size=2 color=#\",$in{htexcolor},\">\n";
$mensaje.="<a href=\"\",$in{'redirect'},\"\">\",$redir2,\"</a>\n";
$mensaje.="</font></th></tr>\n";
$mensaje.="</table></center></td></table><\/body><\/html>\n";

$head="Ordine On-Line ricevuto. REPLY per inviare il messaggio al cliente\n\nModulo proveniente dal sito $HTTP_HOST\n\n\n";

$contenuto=$head.$mensaje;

$cabeceras ="MIME-Version: 1.0 \n";
$cabeceras .="Content-Type: text\/html\; charset=us-ascii\n";
$cabeceras .="From: <$from>\n". "Reply-To: <$from>\n";

mail($recipient,$subject,$contenuto,$cabeceras);
__________________
Flavia.
  #7 (permalink)  
Antiguo 02/12/2002, 08:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ahora no se q pasa ...

El caso q te puse el link hacia el manual de PHP funcion mail .. ahi tienes la documentación completa .. ejemplos de cabeceras y hasta un ejemplo completo de enviar mail() en HTML con sus cabeceras correspondiente ..

Prueba el ejemplo del Manual ..

Un saludo,
  #8 (permalink)  
Antiguo 02/12/2002, 08:59
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
necesito solucionarlo-....

Gracias Cluster...
voy a probarlo, lo leí todo completo y no veo que yo haga algo distinto.
Lo que no se si es correcto es como formateo la tabla, pero igual
lo que no me funciona principalmente es lo de html.
Si quisiera mandar un archivo adjunto seguro que no me
saldría...

si alguien tiene alguna otra idea.......
__________________
Flavia.
  #9 (permalink)  
Antiguo 02/12/2002, 09:17
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 21 años, 11 meses
Puntos: 7
Prueba con este header

<?php
$sheader="From:".$sfrom."\nReply-To:".$sfrom."\n";
$sheader=$sheader."X-Mailer:PHP/".phpversion()."\n";
$sheader=$sheader."Mime-Version: 1.0\n";
$sheader=$sheader."Content-Type: text/html";
?>
  #10 (permalink)  
Antiguo 02/12/2002, 14:09
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

El problema puede ser el caracter \ que usas en esta cabecera. Estas escapando caracteres que no necesitan escapar. Asi, tu :
Código PHP:
$cabeceras .="Content-Type: text\/html\; charset=us-ascii\n"
deberia ser
Código PHP:
$cabeceras .="Content-Type: text/htm\; charset=us-ascii\n"
Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #11 (permalink)  
Antiguo 03/12/2002, 05:54
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 21 años, 5 meses
Puntos: 0
Gracias a todos!! (pero todos)

Especialmente a Mickel... tu codigo era correcto, al reemplazar mi encabezado por el tuyo funcionó!

Muchísimas Gracias!!!!!!!!!!!
__________________
Flavia.
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 14:56.