Foros del Web » Programando para Internet » PHP »

Problema con envio de boletin con base mysql

Estas en el tema de Problema con envio de boletin con base mysql en el foro de PHP en Foros del Web. Hola, tengo este script que envia a los miebros registrados de un sitio el aviso de que se cargo un nuevo evento ( a modo ...
  #1 (permalink)  
Antiguo 25/01/2006, 12:05
 
Fecha de Ingreso: diciembre-2005
Mensajes: 33
Antigüedad: 12 años
Puntos: 0
Pregunta Problema con envio de boletin con base mysql

Hola, tengo este script que envia a los miebros registrados de un sitio el aviso de que se cargo un nuevo evento ( a modo de boletin). El tema es que sale el mensaje de que se envio con exito, pero a las casillas de los miembros no llega nada. Alguna pista que puee ser?? yo no le encuentro la vuelta. Saludos y gracias de antemano

------script:

<?php
$mi_conexion=mysql_connect("localhost","mc000603_j uampi","heman") or die('No se puedo conectar con la base de datos!');

/*
Servidor: aquí debe poner la dirección de su servidor, en la mayoría de las compañías es 'localhost'
Nombre_de_usuario: debe pone su nombre de usuario en el servidor.
Contraseña: su contraseña.
*/

mysql_select_db("mc000603_users_reg",$mi_conexion) ;

/*
Base_de_datos: nombre de su base de datos.
*/

$query_Tabla = "SELECT email FROM users ORDER BY id ASC";
$Tabla = mysql_query($query_Tabla, $mi_conexion) or die(mysql_error());

/*
Email: es el nombre del campo que requerimos, si ha seguido nuestras instrucciones creando nuestra misma tabla en la base de datos no debe cambiar esto.
Usuarios: es el nombre de la tabla donde está el campo 'email', si ha seguido nuestras instrucciones creando nuestra misma tabla en base de datos no debe cambiar esto.
*/

//elaboramos cadena de emails
$losemails="";

//while (list($key,$email) = each($enviarEmail)){
//$enviarEmail = array("$Tabla");
while ($row_Tabla=mysql_fetch_assoc($Tabla)) {
$losemails.=($row_Tabla['email'].", ");

}

$largo=strlen($losemails);
if ($largo>2)
{
//quitamos ultimos ", "
$losemails=substr($losemails,0,$largo-2);
}
else
{
echo "No hay destinatarios!";
die();
};

// se definen los argumentos de mail( ):
$asunto='Prueba de email desde PHP';
$mensaje='<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="/estilos/tantis.css" rel="stylesheet" type="text/css">
</head>
<style>
body {
scrollbar-face-color:#33882D;
scrollbar-highlight-color:#cccccc;
scrollbar-3dlight-color:#33882D;
scrollbar-darkshadow-color:#33882D;
scrollbar-shadow-color:#666666;
scrollbar-arrow-color:#CCCCCC;
scrollbar-track-color:#33882D;
background-color: #33882D;
margin-left: 30px;
margin-top: 20px;
margin-right: 0px;
margin-bottom: 0px;
}
a:link {
color: #FF0000;
text-decoration: none;
}
a:visited {
text-decoration: none;
color: #FF0000;
}
a:hover {
text-decoration: underline;
color: #FF0000;
}
a:active {
text-decoration: none;
color: #FF0000;
}
iframe {
margin: 0px;
padding: 0px;
border: 0px none;
background-color: #33882D;

}

.TITULO-CATEGORIA {
font-family: Geneva, Arial, Helvetica, sans-serif;
color: #FFFFFF;
font-weight: bold;
font-size: 12px;
text-transform: uppercase;
}
.texto_normal {
color: #FFFFFF;
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 12px;
}

.titulonoticias {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FFFFFF;
text-transform: uppercase;
font-style: normal;
font-weight: bold;
}
.FORMULARIOS {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FFFFFF;
text-transform: uppercase;
}
.campos {
font-family: Arial, Helvetica, sans-serif;
font-size: 8pt;
color: #333333;
background-image: url(fondocampo.jpg);
background-repeat: repeat;
}
.fechas {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 8pt;
font-style: normal;
line-height: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
color: #FFFFFF;
}
.fechasnoticias {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 8pt;
font-style: oblique;
line-height: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
color: #FFFFFF;
}
</style>
<body>
<table width="95%" border="0">
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><span class="FORMULARIOS">Autor:
.$_POST["autor"]."\r\n"
</span></td>
</tr>
<tr>
<td><span class="FORMULARIOS">Fecha:
.$_POST["fecha"]."\r\n"
</span></td>
</tr>
<tr>
<td><span class="FORMULARIOS">Evento:
.$_POST["evento"]."\r\n"
</span></td>
</tr>
<tr>
<td><p class="FORMULARIOS"><br>
Se ha ingresado un nuevo evento en Tantis.Com.Ar y usted integra el grupo destinatario de la misma.</p>
<p class="FORMULARIOS">haga click <a link">aqu&Iacute;</a> para verla<br>
</p>
<p class="FORMULARIOS">Juan Pablo Ochoa De La Maza<br>
::::::Tantis::::::::<br>
__________________________________________________ _</p></td>
</tr>
</table>
<p class="FORMULARIOS">&nbsp;</p>
<p class="FORMULARIOS">&nbsp;</p>
<p class="FORMULARIOS">&nbsp;</p>
<p class="FORMULARIOS">&nbsp;</p>
<p class="FORMULARIOS">&nbsp;</p>
<p>&nbsp;</p>
</body>
</html>';

/*
Aquí debe poner su email en formato HTML
*/

$envia='Juan Pablo Ochoa De La Maza';
$remite='[email protected]';

/*
Enviante: Nombre del enviante
Email_remitente: email que desea mostrar como remitente.
*/
$para= "[email protected]";
/// Envío del email:
mail($para, $asunto, $mensaje, "MIME-Version: 1.0
Content-type: text/html; charset=iso-8859-1
From: $envia <$remite>
Bcc: $losemails" . "\r\n") or die("Error al Enviar el Email");
echo "Mensaje Enviado con Éxito!"; //

mysql_free_result($Tabla);
mysql_close($mi_conexion);
?>
  #2 (permalink)  
Antiguo 25/01/2006, 13:23
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 12 años, 3 meses
Puntos: 54
che y si en ves de enviar un solo email a muchisimo usuarios no envias un email para cada usuario???
tendrias q hacer algo asi
Código PHP:
$headers "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "X-Priority: 3\n";
$headers .= "X-MSMail-Priority: Normal\n";
$headers .= "X-Mailer: php\n";
$headers .= "From: \"$envia\" <$remite>\n";//o usa las cabeceras q mas te gusten pero no te olvides de los \n

while($row=mysql_fetch_array($Tabla,MYSQL_BOTH)){
mail($row['email'],$asunto,$mensaje,$headers);

  #3 (permalink)  
Antiguo 25/01/2006, 15:09
 
Fecha de Ingreso: diciembre-2005
Mensajes: 33
Antigüedad: 12 años
Puntos: 0
Muchas gracias por el codigo, pero sigo sin recibir nada. . Estoy bastante perdido ya. Gracias por la ayuda
  #4 (permalink)  
Antiguo 25/01/2006, 20:40
 
Fecha de Ingreso: diciembre-2005
Mensajes: 33
Antigüedad: 12 años
Puntos: 0
necesito una ayudita mas

Cita:
Iniciado por emiliodeg
che y si en ves de enviar un solo email a muchisimo usuarios no envias un email para cada usuario???
tendrias q hacer algo asi
Código PHP:
$headers "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "X-Priority: 3\n";
$headers .= "X-MSMail-Priority: Normal\n";
$headers .= "X-Mailer: php\n";
$headers .= "From: \"$envia\" <$remite>\n";//o usa las cabeceras q mas te gusten pero no te olvides de los \n

while($row=mysql_fetch_array($Tabla,MYSQL_BOTH)){
mail($row['email'],$asunto,$mensaje,$headers);

------------------

Muchas gracias, me sirvio mucho para mandar. El tema es que manda solo a la primera direccion de la lista. Igualmente me gustaria ver de que mande de uno en uno, con algun each o foreach. PRobe y no le encontre la vuelta. Agradezco tu sabia respuesta. Saludos
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:36.