Foros del Web » Programando para Internet » PHP »

No me envia en HTML

Estas en el tema de No me envia en HTML en el foro de PHP en Foros del Web. Gente tengo un lio en php El sistema es un sistema de envios y estaba funcionando ok, hasta que le agregue un campo para que ...
  #1 (permalink)  
Antiguo 07/04/2006, 10:32
Avatar de Garabato  
Fecha de Ingreso: mayo-2002
Ubicación: Merida | Yucatan | Mexico
Mensajes: 311
Antigüedad: 21 años, 11 meses
Puntos: 3
Pregunta No me envia en HTML

Gente tengo un lio en php

El sistema es un sistema de envios y estaba funcionando ok, hasta que le agregue un campo para que muestre el nombre de "Enviado Por"

Carga la info ok, en la bd, hace los envios....

Pero antes me enviaba el html sin problemas, desde que le agregue el campo, los mails llegan bien en el head, pero el HTML ya no lo muestra

El codigo es
==============================
$head = "MIME-Version: 1.0\r\n";
$head .= "Content-type: text/html; charset=iso-8859-1\r\n";
// $head .= "Return-Path: $email<$email> \r\n";
$head .= "From: $enviadopor<$email> \r\n";
$head .= "Sender: $email\r\n";
$head .= "Reply-To: $email \r\n";
$head .= "X-Priority: 3 \r\n";
// $head .= "X-Mailer: PHP/\r\n";
=============================

Pero los mensajes llega tipo:


Si no visualiza este email pulse aqui por favor (con link y nada mas)


Se supone que abajo del "Si no visualiza...."
deben aparecer los graficos HTML pero nada

Si alguien ve algun error podria indicarmelo porfa

Muchas Gracias.
__________________
Garabato
Estudio Creativo Garabato
http://www.estudiogarabato.net
Recuperamos el .COM !!!
  #2 (permalink)  
Antiguo 07/04/2006, 10:58
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
hola prueba con esto:
Código PHP:
$head "From: [email][email protected][/email]\r\nReply-To: [email][email protected][/email]\r\nContent-type: text/html"
desde mi punto de vista el resto de los datos esta demas.

saludos
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #3 (permalink)  
Antiguo 07/04/2006, 11:19
Avatar de Garabato  
Fecha de Ingreso: mayo-2002
Ubicación: Merida | Yucatan | Mexico
Mensajes: 311
Antigüedad: 21 años, 11 meses
Puntos: 3
Gracias por responder

Gracias por responder Maralbust

Te cuento, el sistema es asi:

Una BD guarda 3 tablas cada tabla es un servicio de suscripcion
Tiene una administracion desde donde elegis a que bd envias el news
Yo no cree el sistema, tengo que reeditarlo agregandole el campo que me pidieron o sea uno llamado $enviadopor

Asi pueden comercializar envios a estas bds

El sistema funcionaba bien, hasta que le agregue el campo adicional, el error ahora es el siguiente:

Hago un envio a una bd de prueba
Me llega bien el head o sea:

Soy El que lo envia([email protected])
Para: [email protected]

Asunto: Este es mi asunto


El cuerpo del mensaje, si lo envio en txt, me lo esta tirando todo en una misma linea, por mas que le ponga espacios

Si envio en HTML me llega primero el mail con el head correcto a los 10 o 15 minutos me llega un email:

Desconocido ([email protected])
Para: [email protected]

Asunto: Este es mi asunto

El cuerpo del mensaje me llega primero (en el caso de hotmail) con este texto:
========================================
Mensaje potencialmente peligroso. Informar y borrar

El mensaje no ha superado la comprobación de SenderID. Te recomendamos que te pongas en contacto por teléfono con el remitente antes de abrir este correo. Más información
=========================================
y el link para "Mostrar Contenido"

Si pulso en Mostrar contenido me muestra el email en HTML tal cual lo envie, pero esto llega como segundo email y de Desconocido o sea que cada email me llega dos veces, primero sin el cuerpo y despues el cuerpo sin el asunto.....

Si podes darme una opinion al respecto, muy agradecido
__________________
Garabato
Estudio Creativo Garabato
http://www.estudiogarabato.net
Recuperamos el .COM !!!
  #4 (permalink)  
Antiguo 07/04/2006, 11:23
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
mmm, lo malo es que no le veo nada malo a tu script, y si pruebas sacando el charset???..

saludos
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #5 (permalink)  
Antiguo 07/04/2006, 11:38
Avatar de Garabato  
Fecha de Ingreso: mayo-2002
Ubicación: Merida | Yucatan | Mexico
Mensajes: 311
Antigüedad: 21 años, 11 meses
Puntos: 3
Ya lo intente y nada, sinceramente no entiendo porque dejo de cargar el cuerpo del mensaje.

Si hago una prueba en txt los envia sin problemas, pero en html..... nop
__________________
Garabato
Estudio Creativo Garabato
http://www.estudiogarabato.net
Recuperamos el .COM !!!
  #6 (permalink)  
Antiguo 07/04/2006, 11:39
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
puedes colocar el script completo para ver que le pasa, no solo el header.
incluso con cuerpo.


saludos
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #7 (permalink)  
Antiguo 07/04/2006, 12:16
Avatar de Garabato  
Fecha de Ingreso: mayo-2002
Ubicación: Merida | Yucatan | Mexico
Mensajes: 311
Antigüedad: 21 años, 11 meses
Puntos: 3
El codigo

Este es el codigo de la pagina que procesa los envios "envia.php", tiene un pequeño script que le cargue que me indica cuantos se enviaron y cuantos fallaron, como estoy probando con una bd de 10 emails siempre salen todos.

Hay una pagina anterior que tiene un formulario basico, desde donde se carga la info:

Enviado por:
Asunto:
Mensaje:
y los botones clasico

Código PHP:
<?php
 
include("$DOCUMENT_ROOT/config.php");
//echo "DEMO<br>";
//print_r($_POST);
//echo "<br>$subject";
$subject ereg_replace("ñ","ñ",$subject);
$subject ereg_replace("á","á",$subject);
$subject ereg_replace("é","é",$subject);
$subject ereg_replace("í","í",$subject);
$subject ereg_replace("ó","ó",$subject);
$subject ereg_replace("ú","ú",$subject);
 
//echo "<br>$enviadopor";
$enviadopor ereg_replace("ñ","ñ",$enviadopor);
$enviadopor ereg_replace("á","á",$enviadopor);
$enviadopor ereg_replace("é","é",$enviadopor);
$enviadopor ereg_replace("í","í",$enviadopor);
$enviadopor ereg_replace("ó","ó",$enviadopor);
$enviadopor ereg_replace("ú","ú",$enviadopor);
//$subject = htmlspecialchars($subject);
$email="[email protected]";
$head "MIME-Version: 1.0\r\n"
$head .= "Content-type: text/html; charset=iso-8859-1\r\n"
// $head .= "Return-Path: $email<$email> \r\n";
$head .= "From: $enviadopor<$email> \r\n";
$head .= "Sender: $email\r\n";
$head .= "Reply-To: $email \r\n";
$head .= "X-Priority: 3 \r\n";
// $head .= "X-Mailer: PHP \r\n";
$erroneos=0;
$enviadosconexito=0;
$result=mysql_query("select * from $base",$link);
if(
$row=mysql_fetch_array($result)){
do{
$enviar=$row["Campo1"];
if(
mail($enviar$subject$desc$head)){ $enviadosconexito++; }else{ $erroneos++; }
}while(
$row=mysql_fetch_array($result));
}
$sql_insert mysql_query("INSERT INTO noticias2 SET desc_larga='$desc',enviadopor='$enviadopor',subject='".$subject."' ") or die(mysql_error());
 
//echo "<br>$subject"; 
$envio mysql_insert_id();
 
$sql_insert2 ="insert into envios2 (enviar, enviadopor, id, base) values('si', '$enviadopor', '$envio', '$base')";
$result=mysql_query($sql_insert2);
 
header("Location:listo.php?id=$envio&enviadosconexito=$enviadosconexito&erroneos=$erroneos");
?>
Cualquier ayuda o recomendacion es mas que bienvenida
__________________
Garabato
Estudio Creativo Garabato
http://www.estudiogarabato.net
Recuperamos el .COM !!!
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 19:55.