Ver Mensaje Individual
  #17 (permalink)  
Antiguo 22/03/2014, 20:57
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Como enviar BCC a todos los contactos de mysql

Bueno, tienes un par de errores conceptuales, pero nada que no se pueda solucionar rápidamente.
En primer lugar, mysql_fetch_asoc() no recupera el resultado completo, sino sólo una fila, y lo que haces es crear un array de una única entrada. Por consecuencia estás recorriendo algo que no se recorre, sencillamente.
Cita:
Manual de referncia:

Descripción
Código PHP:
Ver original
  1. array mysql_fetch_assoc ( resource $result )

Devuelve un array asociativo que corresponde a la fila recuperada y mueve el puntero de datos interno hacia adelante. mysql_fetch_assoc() es equivalente a llamar a mysql_fetch_array() con MYSQL_ASSOC como segundo parámetro opcional. Únicamente devuelve un array asociativo.
En segundo lugar, debes siempre verificar que la consulta devuelva efectivamente algo, aunque sea nada más que por cuestiones preventivas.
Finalmente, lo que recorres con el foreach es el mismo resource devuelto por la query. No necesitas otra cosa, no lo compliques.

Código PHP:
Ver original
  1. <?php
  2.  
  3. mysql_select_db($database_db, $db);
  4. $query_Clientes = "SELECT txtEmail FROM Publicidad_tbl ORDER BY Publicidad_tbl.idNombre";
  5. $Clientes = mysql_query($query_Clientes, $db) or die(mysql_error());
  6. if (mysql_num_rows($Clientes) > 0) {
  7.     $totalRows_Clientes = mysql_num_rows($Clientes);
  8.     $email = "[email protected]";
  9.  
  10.     $asunto = $titulo;
  11.     $html = "aquí va el contenido";
  12.  
  13.     $cabeceras = 'MIME-Version: 1.0' . "\r\n";
  14.     $cabeceras .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  15.     $cabeceras .= 'To: $email' . "\r\n";
  16.     $cabeceras .= 'From: $email ' . "\n";
  17.     $cabeceras .= 'Bcc:';
  18.     foreach ($Clientes as $mails) {
  19.         $cabeceras .= $mails['txtEmail'].",";
  20.     }
  21.     $cabeceras .= "\r\n";
  22.     $cabeceras .= 'X-Mailer: PHP/' . phpversion();
  23.     var_dump($cabeceras);
  24.     var_dump($Clientes);
  25.     if (mail($email, $asunto, $html, $cabeceras)) {
  26.         echo '<script language="JavaScript" type="text/javascript">
  27. //<![CDATA[
  28. alert("Mensaje enviado!");
  29. //]]>
  30. </script>
  31. <SCRIPT LANGUAGE=javascript>
  32.   window.history.go(-1)
  33. </SCRIPT>
  34. ';
  35.     } else {
  36.         echo 'Error!';
  37.     }
  38.  
  39.     mysql_free_result($Clientes);
  40. }
  41. ?>
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)