PHP - enviar varios correos

 
Vista:
sin imagen de perfil

enviar varios correos

Publicado por ferley (15 intervenciones) el 23/01/2015 00:07:21
buenas tardes agradesco su ayuda de antemano

lo que quiero es enviar un correo a todos mis usuarios de mi base de datos y hago lo siguiente:

codigo php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
session_start();
include ('conexion.php');
$asunto=$_POST['asunto']
$correo=$_POST['correo'];
$resul=mysql_query("select * from usuario where estado='1'") or die(mysql_error());
$headers="From: admin@user.co";
$mensaje=$correo;
while ($f=mysql_fetch_array($resul)) {
	if (!mail("echo $f['email'];","$asunto","$mensaje","$headers")) die ("No se pudo enviar el email de confirmacion.");
}
?>
<SCRIPT LANGUAGE='javascript'>
			location.href = 'user.php';
</SCRIPT>

la pagina se queda en blanco y no envia correo ni me bota error no se que hacer

gracias por su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

enviar varios correos

Publicado por xve (6935 intervenciones) el 23/01/2015 08:06:28
Hola Ferley, pero esta linea creo que esta mal...
1
if (!mail("echo $f['email'];","$asunto","$mensaje","$headers")) die ("No se pudo enviar el email de confirmacion.");

tendría que ser algo así:
1
if (!mail($f['email'],$asunto,$mensaje,$headers)) die ("No se pudo enviar el email de confirmacion.");


Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

enviar varios correos

Publicado por ferley (15 intervenciones) el 23/01/2015 17:05:10
buenos dias agradesco tu respuesta pero sigue igual no envia correo y se queda en blanco la pagina sin decirme ningun error y sin enviar los correos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 557
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

enviar varios correos

Publicado por zendi (1056 intervenciones) el 24/01/2015 00:57:04
Hola Ferley, creo que es mejor que trabajes con la clase phpmailer. Tienes que descargar la clase phpmailer del sitio oficial.
Te adjunto este codigo; analízalo bien.
Y nos comentas por favor.

Codigo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?php
$connect = pg_connect("host=localhost port=5432 dbname=pediatria user=postgres password=1234");
 
require("PHPMailer-master/class.phpmailer.php");
require("PHPMailer-master/class.smtp.php");
error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
 
$de = $_POST["de_txt"];
$para = $_POST["para_txt"];
$asunto = $_POST["asunto_txt"];
$archivo = $_FILES["archivo_fls"]["tmp_name"];
$destino = $_SERVER['DOCUMENT_ROOT']."/".$_FILES["archivo_fls"]["name"];
//echo $_SERVER['DOCUMENT_ROOT'];
$mensaje = $_POST["mensaje_txa"];
if(move_uploaded_file($archivo,$destino))
{
	$smtp=new PHPMailer();
	# Indicamos que vamos a utilizar un servidor SMTP 
	$smtp->IsSMTP();
	# Definimos el formato del correo con UTF-8 
	$smtp->CharSet="UTF-8";
//	$smtp->SMTPDebug = 1; 
	# autenticación contra nuestro servidor smtp 
	$smtp->SMTPAuth = true; // enable SMTP authentication
	$smtp->SMTPSecure = "tls";
	$smtp->Host = "smtp.live.com";
	// sets MAIL as the SMTP server 
	$smtp->Username = "ferley@hotmail.com"; //tu cuenta de correos; es un ejemplo
	// MAIL username
	$smtp->Password = "*******"; //tu contraseña
	// MAIL password 
	$smtp->Port = 587;
	# datos de quien realiza el envio 
	$smtp->From = "ferley@hotmail.com";
	// from mail 
	$smtp->FromName = "Ferley";
	// from mail name # Indicamos la dirección a donde enviaras el mensaje 
	$nameTo="Andres";
$smtp->Body = "mensaje";
	$smtp->WordWrap = 50;
	$smtp->Timeout=30;
	$smtp->IsHTML(true);
	$smtp->MsgHTML("mensaje");
	$smtp->AddAttachment($destino, $_FILES["archivo_fls"]["name"]);
    $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=movilnet");
/*creo el array o query que debe traer tanto el nombre como la cuenta de correos*/
    $mailTo = "SELECT nombres,cta_correo FROM tutabla";
    $mailTo = @pg_query($connect,$mailTo);
///recorres el query de tu tabla. Esto lo debes aplicar a tus datos por supuesto
while($select3 = @pg_fetch_array($mailTo))
{
      $name = $select3['nombres'];
	  $mail = $select3['cta_correo'];
      $smtp->ClearAllRecipients();
//
      $smtp->AddAddress($mail,$name);
 
   if (!$smtp->Send())
      {
         $respuesta ="El mensaje no se pudo enviar";
         $respuesta .="Error: " .$mail->ErrorInfo;
	  }
	  else
	  {
    	 $respuesta ="El mensaje ha sido enviado";
	  }
}
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <style>
  form { margin: 1em auto; text-align: center; }
   span{ color: #F60; font-size: 1.5 em; } 
   </style>
</head>
<body> <b>
<?php echo $respuesta;?>
</b>
<form name="mail_frm" method="post" enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"]?>">
De:<input type="text" name="de_txt" /> <br/> <br/>
Asunto:<input type="text" name="asunto_txt" /> <br/> <br/>
Adjuntar Archivo: <input type="file" name="archivo_fls" /> <br/> <br/>
Mensaje:<br /><textarea name= "mensaje_txa"/> </textarea> <br/> <br/>
  <input type="submit" name="enviar_btn" value="Enviar"/><br/>
  </form>
</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar