Hola quiero saber como combinar estos dos scripts que encontré en el foro
Este me manda un mail a todas las direcciones de mail de mi base de datos, lo he probado y funciona muy bien.
Código:
<?php
$conexion = mysql_connect("host","usu","pss");
if (!$conexion) {
echo "No pudo conectarse a la BD: " . mysql_error();
exit;
}
if (!mysql_select_db("base de datos",$conexion)) {
echo "No ha sido posible seleccionar la BD: " . mysql_error();
exit;
}
$sql = "SELECT * FROM users";
$resultado = mysql_query($sql);
if (!$resultado) {
echo "No pudo ejecutarse satisfactoriamente la consulta ($sql) " .
"en la BD: " . mysql_error();
exit;
}
if (mysql_num_rows($resultado) == 0) {
echo "No se han encontrado filas, nada a imprimir, asi que voy " .
"a detenerme.";
exit;
}
// Mientras exista una fila de datos, colocar esa fila en $fila
// como una matriz asociativa
// Nota: Si solo espera una fila, no hay necesidad de usar un ciclo
// Nota: Si coloca extract($fila); dentro del siguiente ciclo,
// estara creando $id_usuario, $nombre_completo, y $status_usuario
$cabeceras = 'MIME-Version: 1.0' . "\r\n";
$cabeceras .= 'Content-type: text/; charset=iso-8859-1' . "\r\n";
// Cabeceras adicionales
$cabeceras .= 'To: ' . "\r\n";
$cabeceras .= 'From: pelito. ' . "\r\n";
$cabeceras .= 'Cc: xxxx xxxxx' . "\r\n";
$cabeceras .= 'Bcc: xxxx xxxx' . "\r\n";
$mensaje = 'Hola';
$asunto = 'Aun no tiene su pagina web?';
while ($fila = mysql_fetch_assoc($resultado)) {
$nombre="name";
$emails="email";
// Enviarlo
mail($fila[$emails], $asunto, $mensaje, $cabeceras);
//$nombre="nom_sql";
//$emails="emails_sql";
echo $fila[$nombre];
echo '<br>';
echo $fila[$emails];
echo '<br>';
echo '<br>';
}
mysql_free_result($resultado);
?>
Este otro tiene la función class.phpmailer.php que funciona bien llegan los correos con formato html solo que tengo que mandar de a uno los correos.
Código:
<?
// primero hay que incluir la clase phpmailer para poder instanciar
//un objeto de la misma
require "includes/class.phpmailer.php";
//instanciamos un objeto de la clase phpmailer al que llamamos
//por ejemplo mail
$mail = new phpmailer();
//Definimos las propiedades y llamamos a los métodos
//correspondientes del objeto mail
//Con PluginDir le indicamos a la clase phpmailer donde se
//encuentra la clase smtp que como he comentado al principio de
//este ejemplo va a estar en el subdirectorio includes
$mail->PluginDir = "includes/";
//Con la propiedad Mailer le indicamos que vamos a usar un
//servidor smtp
$mail->Mailer = "smtp";
//Asignamos a Host el nombre de nuestro servidor smtp
$mail->Host = "smtp.xxxx.xxx";
//Le indicamos que el servidor smtp requiere autenticación
$mail->SMTPAuth = true;
//Le decimos cual es nuestro nombre de usuario y password
$mail->Username = "xxxx xxxx";
$mail->Password = "xxxxx";
//Indicamos cual es nuestra dirección de correo y el nombre que
//queremos que vea el usuario que lee nuestro correo
$mail->From = "xxxxxx xxxxxx";
$mail->FromName = "Eduardo Garcia";
//el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar
//una cuenta gratuita, por tanto lo pongo a 30
$mail->Timeout=30;
//Indicamos cual es la dirección de destino del correo
$mail->AddAddress("xxxxx xxxxxx");
//Asignamos asunto y cuerpo del mensaje
//El cuerpo del mensaje lo ponemos en formato html, haciendo
//que se vea en negrita
$mail->Subject = "Prueba de phpmailer";
$mail->Body = "<b>Mensaje de prueba mandado con phpmailer en formato html</b>";
//Definimos AltBody por si el destinatario del correo no admite email con formato html
$mail->AltBody = "Mensaje de prueba mandado con phpmailer en formato solo texto";
//se envia el mensaje, si no ha habido problemas
//la variable $exito tendra el valor true
$exito = $mail->Send();
//Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas como mucho
//para intentar enviar el mensaje, cada intento se hara 5 segundos despues
//del anterior, para ello se usa la funcion sleep
$intentos=1;
while ((!$exito) && ($intentos < 5)) {
sleep(5);
//echo $mail->ErrorInfo;
$exito = $mail->Send();
$intentos=$intentos+1;
}
if(!$exito)
{
echo "Problemas enviando correo electrónico a ".$valor;
echo "<br>".$mail->ErrorInfo;
}
else
{
echo "Mensaje enviado correctamente";
}
?>
Lo que quiero si se puede es combinarlos, que mande a las direcciones de mail de mi base pero con la función class.phpmailer.php para que lleguen con formato html.
Lo que yo busco es orientación ya que estoy aprendiendo a usar php.
Gracias de ante mano…