Foros del Web » Programando para Internet » PHP »

Enviar página construida en PHP por mail, cómo?

Estas en el tema de Enviar página construida en PHP por mail, cómo? en el foro de PHP en Foros del Web. Hola a todos! Necesito enviar una página en formato HTML que se construye en PHP por mail.. Es decir, enviarlo sé.. y funciona... $asunto="Datos"; $fp ...
  #1 (permalink)  
Antiguo 20/09/2006, 06:40
 
Fecha de Ingreso: junio-2005
Mensajes: 427
Antigüedad: 18 años, 9 meses
Puntos: 6
Enviar página construida en PHP por mail, cómo?

Hola a todos!

Necesito enviar una página en formato HTML que se construye en PHP por mail..

Es decir, enviarlo sé.. y funciona...

$asunto="Datos";
$fp = fopen($archivo,'r');
$mensaje = fread($fp, filesize($archivo));
mail($email,"$asunto","$mensaje","Content-Type: text/html; charset=iso-8859-1\nFROM: $nombreDE <$DE>");

El problema es que el archivo que debe enviar es, datos.php y los datos los coge de una BD, y bien, pues el archivo lo envía pero sin datos..

Mi pregunta es que debo hacer.. Se debe crear un archivo temporal o algo?

Saludos!
__________________
Diseño web Barcelona
  #2 (permalink)  
Antiguo 20/09/2006, 08:51
 
Fecha de Ingreso: junio-2005
Mensajes: 427
Antigüedad: 18 años, 9 meses
Puntos: 6
He encontrado por ahí buscando algo de meter toda la pagina en una variable, por ej: $cuerpo

Cómo hago eso?

saludos y gracias!
__________________
Diseño web Barcelona
  #3 (permalink)  
Antiguo 20/09/2006, 09:31
Avatar de the_scorpion  
Fecha de Ingreso: mayo-2006
Ubicación: Cuba
Mensajes: 696
Antigüedad: 17 años, 11 meses
Puntos: 3
Código PHP:
//Email receptor
$para '[email protected]';

// asunto
$asunto 'Asunto Mensaje';

//Mensaje, html
$mensaje ' ';

$cuerpo  'MIME-Version: 1.0' "\r\n";
$cuerpo .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";

$cuerpo .= 'To: Pepe <[email protected]>' "\r\n";
$cuerpo .= 'From: Asunto mensaje <[email protected]>' "\r\n";
$cuerpo .= 'Cc: [email protected]"\r\n";
$cuerpo .= 'Bcc: [email protected]"\r\n";

// Enviarlo
mail($para$asunto$mensaje$cabeceras); 
__________________
Que hablen mal de uno es espantoso. Pero hay algo peor: que no hablen.
Quien hace, puede equivocarse. Quien nada hace, ya está equivocado".
  #4 (permalink)  
Antiguo 20/09/2006, 09:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si ya tienes tu página .php funcionando que la llamas por el URL y al ejecutarla (pasandole los parámetros que necesite) genera sus salida en "HTML" y ese HTML debes enviarlo por e-mail .. lo ideal es que captures el buffer de salida de PHP previamente "insertando" tu página en tu código:

Código PHP:
<?
// Inicias el control del buffer
ob_start();
// aquí la insertas y la ejecutas
include("pagina.php"); 
// capturas el buffer en este punto a una variable
$html=ob_get_contents();
// te deshaces del buffer (no lo necesitamos mostrar).
ob_end_clean();

// y apartir de aquí .. compones tu e-mail .. el cuerpo del mismo lo tienes en $html
?>
Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 23/09/2006, 03:24
 
Fecha de Ingreso: junio-2005
Mensajes: 427
Antigüedad: 18 años, 9 meses
Puntos: 6
Muchas gracias chicos.. voy a probar... ya os contaré... :D
__________________
Diseño web Barcelona
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 04:50.