Foros del Web » Programando para Internet » PHP »

problemas con funcion mail

Estas en el tema de problemas con funcion mail en el foro de PHP en Foros del Web. les copio el codigo y que alguien me diga que hago mal que llegan en formato texto y solo se ve el codigo html Código ...
  #1 (permalink)  
Antiguo 29/07/2004, 14:06
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 20 años, 7 meses
Puntos: 4
problemas con funcion mail

les copio el codigo y que alguien me diga que hago mal que llegan en formato texto y solo se ve el codigo html


Código PHP:
<?
include("config.php");
//set_time_limit(0);
///   ejecutor
//------------------------------------- seleciono la nota!!!!!


    
$db mysql_connect($host$usuario,$password); 
    
mysql_select_db($database,$db);
    
    
$sql "SELECT * FROM notas WHERE  codigo = '$hiddenota'  LIMIT 0,1";
    
$result mysql_query($sql,$db);
    
$myrow mysql_fetch_array($result);   


$mailer"
<head>
<title>Felicitaciones</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
</head> 


<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"500\" id=\"AutoNumber1\" height=\"68\">
   <tr>
     <td width=\"100%\" bgcolor=\"#FF0000\" height=\"68\">
     <table border=\"2\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"100%\" id=\"AutoNumber2\" height=\"33\">
       <tr>
         <td width=\"100%\" height=\"33\">
         <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"100%\" id=\"AutoNumber3\" bgcolor=\"#FFFFFF\">
           <tr>
             <td width=\"34%\" align=\"center\">
             <img border=\"0\" src=\"http://www.newslettersantafe.com.ar/admin/images/logo.jpg\" width=\"107\" height=\"37\"></td>
                <td width=\"66%\"><font size=\"2\" face=\"Tahoma\">titulo</font>: <font size=\"2\" face=\"Tahoma\"><strong>$myrow[titulo] 
                  </strong></font> 
                  <p><font size=\"2\" face=\"Tahoma\">Introducci&oacute;n: $myrow[introduccion] 
                    </font></p>
                  <p><font size=\"2\" face=\"Tahoma\">fuente: <em><strong>$myrow[fuente] 
                    </strong></em></font></td>
           </tr>
           <tr>
                <td width=\"100%\" colspan=\"2\"><blockquote>
<font size=\"2\" face=\"Tahoma\"> $myrow[texto] 
                  </font></blockquote></td>
           </tr>
         </table>
         </td>
       </tr>
     </table>
     </td>
   </tr>
 </table>

 </body>
 </html>"
;
 
//-------------------------------------------- aca termina el formato de la nota


$muestro count($sop);

for (
$i=0$i $muestro$i++){

mail("$sop[$i]","news","$mailer","From: [email][email protected][/email]\nContent-Type: text/html; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\n");

echo  
$sop[$i]."<br>" ;
/*echo $sop[1].", ";
echo $sop[2].", ";
echo $sop[3].", ";*/
}


?>

como veras, amigo cluster, lo del check box que se llama $sop lo modifique un toque, y recorro el array con un count y un for, todo anda bien, incluso rápido; pero mi pregunta es cuantos mail va a soportar mandar este script?
y por que no llegan bien armados? en alguna casillas como mi hotmail llega bien, en alguna pop3 de dattatec llegan para el traste, llega el codigo html tal como si lo estubiera viendo con un editor.

saludos geniso, y please, respondan algo que me siento cada vez mas perdido
__________________
w32.oktubre@mm <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
  #2 (permalink)  
Antiguo 29/07/2004, 14:16
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Leistes la documentación de mail()? (Tienes ejemplos en las FAQ's de este foro también)

www.php.net/mail

Te falta indicar que tu e-mail será enviado en formato HTML (con codificación HTML) .. ahí al no decir nada (en las cabeceras del e-mail) .. por defecto es "texto plano".

Ahora .. como un "webmail o cliente de correo en general" interprete tu código será otra cosa, pero tu e-mail como lo envias NO es estricatament codificado como HTML. Esto del "mail" tiene su própias normas y lo define su própio protocolo .. hay que respetarlas.

Cita:
pero mi pregunta es cuantos mail va a soportar mandar este script?
Pues todos los que quieras .. Es cosa de que aumentes el tiempo de ejecución de tu script si sobrepasa lo que PHP tiene establecido por defecto (php.ini .. sobre 30 segundos) con la función que ya veo que medio ivas a usar: set_time_limit().

Ahora .. que sea más optimo hacerlo así o no .. es otra cosa. Yo para gran cantidad de e-mails no usaría mail() de PHP sino envio del e-mail directamente por SMTP ayudandome de la classe: PHP mailer (http://phpmailer.sourceforge.net) que te permite hacer eso y muchas cosas más (además que respeta las normas de mail para las cabeceras).

Un saludo,

PD: Este es un mensaje púlico .. intenta no referirte a nadie en concreto, habla en general, cualquier persona puede ayudarte igualmente.

Última edición por Cluster; 29/07/2004 a las 14:18
  #3 (permalink)  
Antiguo 29/07/2004, 14:38
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 20 años, 7 meses
Puntos: 4
so sorry

Cluster, no es que me refería a vos específicamente, es que justo eras el únic que respondio mi post anterior sobrecomo selecionar destinatarios con un check box y bueno, quería quew vieras que habia resuelto el lio con un array tal cual lo sugeriste vos.

respecto a como le indico a mail que lo que envía es html, en las faqs del foro esta medio pobreporque ese script que dejo alguien no anda ni pa tras ni pa delante, la clase de enviar mail esta incompleta.

ni bien termine de resolver esto, se los publico para que lo corijan un poco y lo guardamos como recurso.

(( terminé haciendo un híbrido entre el autentificator y un administrador de banners )), quien sabe hasta pùede ser que le sirva a aguien
__________________
w32.oktubre@mm <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
  #4 (permalink)  
Antiguo 29/07/2004, 19:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Cluster, no es que me refería a vos específicamente, es que justo eras el únic que respondio mi post anterior sobrecomo selecionar destinatarios con un check box y bueno, quería quew vieras que habia resuelto el lio con un array tal cual lo sugeriste vos.
Ok, en esos casos es mejor publicar/mencionar como te fué en el mensaje original .. así otro usuario que "use el buscador" algún día .. tal vez vea tu pregunta, la respuesta y que la respuesta satisfació tu problema.

Cita:
respecto a como le indico a mail que lo que envía es html, en las faqs del foro esta medio pobreporque ese script que dejo alguien no anda ni pa tras ni pa delante, la clase de enviar mail esta incompleta.
Bueno .. no me refería a esa FAQ de enviar el mail por SMTP .. sino a esta de título:
13. Como envio un email en formato HTML

Pero, también te dejé el link hacia la documentación oficial de PHP que -siempre- debes consultar primero (con eso debería sobrar .. suelen haber ejemplos, tanto en la própia documentación oficial como en los comentarios de los usuarios de la misma función).


Un saludo,
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 09:25.