Foros del Web » Programando para Internet » PHP »

ayuda para mandar html por php

Estas en el tema de ayuda para mandar html por php en el foro de PHP en Foros del Web. Hola No se si alguien pueda ayudarme, lo ke pasa es ke tengo una programación realizada para mandar mensajes (solo texto básico), los mail de ...
  #1 (permalink)  
Antiguo 08/08/2008, 15:27
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
ayuda para mandar html por php

Hola
No se si alguien pueda ayudarme, lo ke pasa es ke tengo una programación realizada para mandar mensajes (solo texto básico), los mail de mis usuarios en la base de datos, pero no se como hacer para mandar algún htm con imágenes y todas esas cosas tipo newsletter???

si alguien me puede decir que debo modificar se lo agradecería

Última edición por dcolo; 08/08/2008 a las 16:05
  #2 (permalink)  
Antiguo 08/08/2008, 15:44
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: ayuda para mandar html por php

¿Mandar html por php?

¿Te refieres a mandar un correo electrónico con formato en html? si es así procura ver las FAQ antes de preguntar de todas maneras te dejo el enlace

http://www.forosdelweb.com/f18/faqs-...00/#post254350
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #3 (permalink)  
Antiguo 08/08/2008, 16:12
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: ayuda para mandar html por php

Que tal dcolo, aqui te dejo otro ejemplo:

Enviar correo en formato HTML desde PHP




Saludos.
  #4 (permalink)  
Antiguo 08/08/2008, 23:31
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

gracias, pero ya había visto el FAQ y en verdad no se ke comando le doy si lo ke quiero es manda otra pagina diseñada con imágenes y cosas

esto es lo ke tengo y manda muy bien mensajes de solo texto:

------------------------------------
.....
.....
.....
mysql_select_db($base_de_datos);

$consulta2= "SELECT tutor FROM `usuario` where usuario='$userGral' LIMIT 1";
$resultados=mysql_query($consulta2,$conectar);
$totalregistros=mysql_num_rows($resultados);

if(($totalregistros>0)){
$consulta2= "SELECT usuario,correo,contrasena from usuario where correo LIKE '%@%.%'";

$r=mysql_query($consulta2,$conectar);
$t=mysql_num_rows($r);
for($i=0;$i<$t;$i++){
$user=mysql_result($r,$i,"usuario");
$pass=mysql_result($r,$i,"contrasena");
$micorreo="[email protected]";

$shtml=' '; //si pongo un mensaje es perfecto pero lo ke quiero es mandar una direccion
$sheader="From:$micorreo".$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";

$mail2=mysql_result($r,$i,"correo");
echo $mail2.'<br>' "listo";
mail($mail2,$tit,$shtml,$sheader);
}
}else{
echo "esta vaina no se pudo, xD ";
}



------
Incluso para mandar el texto solo no hace falta tanta cosa.. eso lo agregue para intentar enviar una pagina bien diseñada
igualmente muchas gracias
  #5 (permalink)  
Antiguo 08/08/2008, 23:52
agd
 
Fecha de Ingreso: mayo-2008
Mensajes: 98
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: ayuda para mandar html por php

hola, por experiencia te digo que a veces es un poco complicado el mandar contenido html y que los servidores de correo (gmail hotmail etc) los lean correctamente..

Tendrias que investigar mas sobre los headers a ser enviados, de todas formas te recomiendo el phpmailer o programas similares que son muy completos y hasta permiten enviar archivos adjuntos..
  #6 (permalink)  
Antiguo 11/08/2008, 11:07
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

Muchas gracias AGD, el programa es muy bueno,
Quien lo necesito lo único ke tiene ke hace es crear otro .php con lo siguiente, luego no es sino ke uds le den entrada a sus bd y todo eso.


1. require("class.phpmailer.php");
2. $mail = new PHPMailer();
3. $mail->Host = "localhost";
4.
5. $mail->From = "[email protected]";
6. $mail->FromName = "Nombre del Remitente";
7. $mail->Subject = "Subject del correo";
8. $mail->AddAddress("[email protected]","Nombre 01");
9. $mail->AddAddress("[email protected]","Nombre 02");
10. $mail->AddCC("[email protected]");
11. $mail->AddBCC("[email protected]");
12.
13. $body = "Hola <strong>amigo</strong><br>";
14. $body .= "probando <i>PHPMailer<i>.<br><br>";
15. $body .= "<font color='red'>Saludos</font>";
16. $mail->Body = $body;
17. $mail->AltBody = "Hola amigo\nprobando PHPMailer\n\nSaludos";
18. $mail->AddAttachment("images/foto.jpg", "foto.jpg");
19. $mail->AddAttachment("files/demo.zip", "demo.zip");
20. $mail->Send();




Pero ahora la eterna cuestión... si alguien sabe como hacer para que no llegue como SPAM????
Plissss

Gracias
  #7 (permalink)  
Antiguo 11/08/2008, 12:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: ayuda para mandar html por php

Hola dcolo,

Desafortunadamente eso no es ya problema de PHP, si no de tu servidor de SMTP y de que tengas una IP fija en lugar de una dinamica.

También si vas a enviar a Hotmail tienes que registrar tu dominio y alterar tus MX records para que los correos lleguen.

Saludos.
  #8 (permalink)  
Antiguo 13/08/2008, 14:51
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

Sigo con mi preguntadera por ke es ke nada me sale (que pena)

Pero como hago para que el phpmailer me mande los correos a todos los usuarios o a la cantidad que uno pida de usuarios de una base de datos???

Lo e intentado con un for por ke me parecía lomas lógico pero no sale y ya toy ke me arranco una .. de hacer intentos fallidos



$conectar=mysql_connect ($servidor,$usuario,$password);
mysql_select_db($base_de_datos);

$consulta2= "SELECT correo from usuario where 1 LIMIT $min,$max";

$r=mysql_query($consulta2,$conectar);
$t=mysql_num_rows($r);
for($i=0;$i<$t;$i++){

$mail2=mysql_result($r,$i,"correo");

require "includes/class.phpmailer.php";
$mail = new PHPMailer();
$mail->Host = "localhost";
$mail->SMTPAuth = true;
$mail->From = $correo;
$mail->FromName = "minombre";
$mail->Subject = $tit;
$email = $mail2
$body = "Hola <strong>amigo </strong><br>";
$body .= "probandoo <i>PHPMailer m<i>.<br><br>";
$body .= "<font color='red'>Saludos \n</font>";
$mail->Body = $body;
$mail->AltBody = "Hola ami\nprobando PHPMailer\n\nSaludos";
$mail->AddAttachment("htmls/algo.html", "algo.html");
$mail->AddAttachment("htmls/algo.jpg", "algo.jpg")
$mail->AddAddress($email);


$mail->Send();

echo $mail2.'<br>';
}
else{
echo "cambios no realizados "


Si alguien me puede decir ke me falta plis o ke sobra o ke pasaaa porel amor de diossss
  #9 (permalink)  
Antiguo 13/08/2008, 14:57
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: ayuda para mandar html por php

Imprime tu variable $mail y checa que esté el valor que quieres, por cierto te falta un ;
Código PHP:
$email $mail2 
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #10 (permalink)  
Antiguo 13/08/2008, 15:09
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

Ya esta el

<?php//<--

$email = $mail2

//-->?>

ya e intentado imprimirlo y nada no se ke pas :(
  #11 (permalink)  
Antiguo 13/08/2008, 15:14
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: ayuda para mandar html por php

Yo haría el recorrido de la siguiente manera
Código PHP:
while ($row_consulta mysql_fetch_assoc($r)){

$mail $row_consulta['correo'];

// las demás instrucciones

__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #12 (permalink)  
Antiguo 13/08/2008, 15:23
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

dices asi:

Código PHP:
 mysql_select_db($base_de_datos);

   
$consulta2"SELECT correo from usuario where 1 LIMIT $min,$max";

   
$r=mysql_query($consulta2,$conectar);
   
$t=mysql_num_rows($r);
   
 while (
$row_consulta mysql_fetch_assoc($r)){

    
$mail2 $row_consulta['correo'];
 
     print 
$mail2;    
        
require 
"includes/class.phpmailer.php";
$mail = new PHPMailer();
$mail->Host "localhost";
$mail->From $correo;
$mail->FromName "MIO";
$mail->Subject $tit;
$email $mail2
$body  
"Hola <strong>amigo </strong><br>";
$body .= "probandoo <i>PHPMailer m<i>.<br><br>";
$body .= "<font color='red'>Saludos \n</font>";
$mail->Body $body;
$mail->AltBody "Hola ami\nprobando PHPMailer\n\nSaludos";
$mail->AddAttachment("htmls/algo.html""algo.html");
$mail->AddAttachment("htmls/algo.jpg""algo.jpg")
$mail->AddAddress($email);

    
$mail->Send(); 
}

}else{
   echo 
"cambios no realizados ";

si es asi tampoco me da
  #13 (permalink)  
Antiguo 13/08/2008, 16:01
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: ayuda para mandar html por php

Qué valor te imprime $t?
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #14 (permalink)  
Antiguo 13/08/2008, 16:07
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

$t lo tengo para el total de registros en la bd, pero de imprimir no me imprime nada la pag
  #15 (permalink)  
Antiguo 13/08/2008, 16:09
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: ayuda para mandar html por php

Pues entonces está mal tu consulta, mientras no te salga un valor tu query no trae resultados, por ende no hará nada el while :)
__________________
TolerantX
http://tolerantx.com
Linux User #385226
  #16 (permalink)  
Antiguo 13/08/2008, 16:35
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

pero la consulta esta bien por ke si tiro solo la cosulta para ke mande los mails con la funcion mail (solo manda texto) lo hace perfecto y $t me el valor ke es (10).
Pero como necesito es ke mande el html introduci los comandos necesarios y ya no da nada.
  #17 (permalink)  
Antiguo 14/08/2008, 14:34
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

con que mas comandos se puede????
  #18 (permalink)  
Antiguo 14/08/2008, 16:56
Avatar de dcolo  
Fecha de Ingreso: junio-2007
Mensajes: 20
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: ayuda para mandar html por php

Si yo tengo

Código PHP:
   $r=mysql_query($consulta2,$conectar);
   
$t=mysql_num_rows($r);
   echo 
$t.'<br>';
 
 while (
$row_consulta mysql_fetch_assoc($r)){

    
$mail2 $row_consulta['correo'];
 
    echo 
$mail2.'<br>';    


No hay ningun problema pues me imprime los mails y el valor de $t como es

Pero si le agrego:
Código PHP:
   $r=mysql_query($consulta2,$conectar);
   
$t=mysql_num_rows($r);
   echo 
$t.'<br>';
 
 while (
$row_consulta mysql_fetch_assoc($r)){

    
$mail2 $row_consulta['correo'];
 
    echo 
$mail2.'<br>';    
        
    
$mail = new PHPMailer();
    
$mail->Host "localhost";
    
$mail->From "[email protected]";
    
$mail->FromName "yo";
    
$mail->Subject "hola";
    
$mail->AddAddress($email);
    
$mail->AddBCC("");
    
    
$body  "Hola <strong>ami</strong><br>";
    
$body .= "probando <i>PHPMailer<i>.<br><br>";
    
$body .= "<font color='red'>Saludos \n</font>";
    
$mail->Body $body;
    
$mail->AltBody "Hola ami\nprobando PHPMailer\n\nSaludos";
    
$mail->AddAttachment("htmls/algo.html""algo.html");
    
$mail->AddAttachment("htmls/al.jpg""al.jpg")

    
$mail->Send(); 

es ahi donde ya no me da nada y no se porque si alguien me puede decir
  #19 (permalink)  
Antiguo 14/08/2008, 21:46
Avatar de TolerantX  
Fecha de Ingreso: marzo-2006
Ubicación: Guadalajara, México.
Mensajes: 408
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: ayuda para mandar html por php

Código PHP:
   $r=mysql_query($consulta2,$conectar);
   
$t=mysql_num_rows($r);
   echo 
$t.'<br>';
 
 while (
$row_consulta mysql_fetch_assoc($r)){

    
$mail2 $row_consulta['correo'];
 
    
//echo $mail2.'<br>';    
        
    
$mail = new PHPMailer();
    
$mail->Host "localhost";
    
$mail->From "[email protected]";
    
$mail->FromName "yo";
    
$mail->Subject "hola";
    
$mail->AddAddress($mail2); // <==== cambié el nombre de la variable
    
$mail->AddBCC("");
    
    
$body  "Hola <strong>ami</strong><br>";
    
$body .= "probando <i>PHPMailer<i>.<br><br>";
    
$body .= "<font color='red'>Saludos \n</font>";
    
$mail->Body $body;
    
$mail->AltBody "Hola ami\nprobando PHPMailer\n\nSaludos";
    
$mail->AddAttachment("htmls/algo.html""algo.html");
    
$mail->AddAttachment("htmls/al.jpg""al.jpg")

    
$mail->Send(); 

__________________
TolerantX
http://tolerantx.com
Linux User #385226
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 18:16.