FAQ
Estoy trabajando con phpmailer
El caso es que no lo controlo mucho y tengo los siguientes errores:
1-No puedo enviar los emails a las direcciones de la base de datos , me da
el siguiente error:
"Problemas enviando correo electrónico a
Language string failed to load: recipients_failedbegabi@telefonica.net,
info@begabi.com, begabi@terra.com"
2-En el formulario del email utilizo un htmlarea y no me aparecen las
imágenes embebidas
Me estoy rompiendo la cabeza y no sé donde esta el error o que propiedades o
metodos me faltan por poner o pongo mal.
El código es el siguiente:
<?
// primero hay que incluir la clase phpmailer para poder instanciar
//un objeto de la misma
require "includes/class.phpmailer.php";
if($_POST['asunto']){
include("../includes/configuracion.php");
include("../includes/funciones.php");
$cnx = conectar();
$query_Tabla = "SELECT email FROM emails ORDER BY id ASC";
$Tabla = mysql_query($query_Tabla, $cnx) or die(mysql_error());
//elaboramos cadena de emails
$losemails="";
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();
};
}
//elaboramos cadena de emails

//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 = "mail.elmussol.com";

//Le indicamos que el servidor smtp requiere autenticación
$mail->SMTPAuth = true;

//Le decimos cual es nuestro nombre de usuario y password
$mail->Username = "gabi";
$mail->Password = "waikiki";

//Indicamos cual es nuestra dirección de correo y el nombre que
//queremos que vea el usuario que lee nuestro correo
$mail->From = "webmaster@elmussol.com";
$mail->FromName = "EL MUSSOL";

//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 ($losemails);

//Asignamos asunto y cuerpo del mensaje
//El cuerpo del mensaje lo ponemos en formato html, haciendo
//que se vea en negrita
$mail->Subject = "$asunto";
$mail->Body = "$propuesta";

//Definimos AltBody por si el destinatario del correo no admite email con
formato html
$mail->AltBody = "Tu editor de correo no acepta html";

//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";
}

?>
Gracias
Gabi

Search Discussions

  • carlos Medina at Mar 13, 2006 at 8:49 am
    Hola Gabi,

    lo ultimo que se me ocurre es que el servidor no te esta trabajando:
    prueba enviando un solo mail como lo indica el manual de PHP.

    mail("tu_mail@servidor.com","el encabezado","el mensaje",$header);

    en el $header utiliza tu header pero puedes probar colocar solo "\n" en
    vez de "\r\n".

    Saludos

    Carlos

    gabi wrote:
    Estoy trabajando con phpmailer
    El caso es que no lo controlo mucho y tengo los siguientes errores:
    1-No puedo enviar los emails a las direcciones de la base de datos , me da
    el siguiente error:
    "Problemas enviando correo electrónico a
    Language string failed to load: recipients_failedbegabi@telefonica.net,
    info@begabi.com, begabi@terra.com"
    2-En el formulario del email utilizo un htmlarea y no me aparecen las
    imágenes embebidas
    Me estoy rompiendo la cabeza y no sé donde esta el error o que propiedades o
    metodos me faltan por poner o pongo mal.
    El código es el siguiente:
    <?
    // primero hay que incluir la clase phpmailer para poder instanciar
    //un objeto de la misma
    require "includes/class.phpmailer.php";
    if($_POST['asunto']){
    include("../includes/configuracion.php");
    include("../includes/funciones.php");
    $cnx = conectar();
    $query_Tabla = "SELECT email FROM emails ORDER BY id ASC";
    $Tabla = mysql_query($query_Tabla, $cnx) or die(mysql_error());
    //elaboramos cadena de emails
    $losemails="";
    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();
    };
    }
    //elaboramos cadena de emails

    //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 = "mail.elmussol.com";

    //Le indicamos que el servidor smtp requiere autenticación
    $mail->SMTPAuth = true;

    //Le decimos cual es nuestro nombre de usuario y password
    $mail->Username = "gabi";
    $mail->Password = "waikiki";

    //Indicamos cual es nuestra dirección de correo y el nombre que
    //queremos que vea el usuario que lee nuestro correo
    $mail->From = "webmaster@elmussol.com";
    $mail->FromName = "EL MUSSOL";

    //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 ($losemails);

    //Asignamos asunto y cuerpo del mensaje
    //El cuerpo del mensaje lo ponemos en formato html, haciendo
    //que se vea en negrita
    $mail->Subject = "$asunto";
    $mail->Body = "$propuesta";

    //Definimos AltBody por si el destinatario del correo no admite email con
    formato html
    $mail->AltBody = "Tu editor de correo no acepta html";

    //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";
    }

    ?>
    Gracias
    Gabi
  • Gabi at Mar 13, 2006 at 2:23 pm
    snifff
    el servidor funciona bien
    Estoy a tope con phpmailer que me funciona bien pero no para multiples
    emails como pongo en el cçodigo
    gracias
    "carlos Medina" <info@simply-networks.de> escribió en el mensaje
    news:AA.7E.55982.E0235144@pb1.pair.com...
    Hola Gabi,

    lo ultimo que se me ocurre es que el servidor no te esta trabajando:
    prueba enviando un solo mail como lo indica el manual de PHP.

    mail("tu_mail@servidor.com","el encabezado","el mensaje",$header);

    en el $header utiliza tu header pero puedes probar colocar solo "\n" en
    vez de "\r\n".

    Saludos

    Carlos

    gabi wrote:
    Estoy trabajando con phpmailer
    El caso es que no lo controlo mucho y tengo los siguientes errores:
    1-No puedo enviar los emails a las direcciones de la base de datos , me
    da
    el siguiente error:
    "Problemas enviando correo electrónico a
    Language string failed to load: recipients_failedbegabi@telefonica.net,
    info@begabi.com, begabi@terra.com"
    2-En el formulario del email utilizo un htmlarea y no me aparecen las
    imágenes embebidas
    Me estoy rompiendo la cabeza y no sé donde esta el error o que
    propiedades o
    metodos me faltan por poner o pongo mal.
    El código es el siguiente:
    <?
    // primero hay que incluir la clase phpmailer para poder instanciar
    //un objeto de la misma
    require "includes/class.phpmailer.php";
    if($_POST['asunto']){
    include("../includes/configuracion.php");
    include("../includes/funciones.php");
    $cnx = conectar();
    $query_Tabla = "SELECT email FROM emails ORDER BY id ASC";
    $Tabla = mysql_query($query_Tabla, $cnx) or die(mysql_error());
    //elaboramos cadena de emails
    $losemails="";
    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();
    };
    }
    //elaboramos cadena de emails

    //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 = "mail.elmussol.com";

    //Le indicamos que el servidor smtp requiere autenticación
    $mail->SMTPAuth = true;

    //Le decimos cual es nuestro nombre de usuario y password
    $mail->Username = "gabi";
    $mail->Password = "waikiki";

    //Indicamos cual es nuestra dirección de correo y el nombre que
    //queremos que vea el usuario que lee nuestro correo
    $mail->From = "webmaster@elmussol.com";
    $mail->FromName = "EL MUSSOL";

    //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 ($losemails);

    //Asignamos asunto y cuerpo del mensaje
    //El cuerpo del mensaje lo ponemos en formato html, haciendo
    //que se vea en negrita
    $mail->Subject = "$asunto";
    $mail->Body = "$propuesta";

    //Definimos AltBody por si el destinatario del correo no admite email
    con
    formato html
    $mail->AltBody = "Tu editor de correo no acepta html";

    //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";
    }

    ?>
    Gracias
    Gabi
  • carlos Medina at Mar 13, 2006 at 3:36 pm
    Hola Gabi,

    lamentablemente no te puedo ayudar mas porque tendria que ver la
    configuracion de los servidores etc. Pero te digo que tu tienes el reply
    puesto en el servidor mail. Cada vez que te escribo viene el mensaje:
    "no estoy en el pais..."

    Saludos

    Carlos

    gabi wrote:
    snifff
    el servidor funciona bien
    Estoy a tope con phpmailer que me funciona bien pero no para multiples
    emails como pongo en el cçodigo
    gracias
    "carlos Medina" <info@simply-networks.de> escribió en el mensaje
    news:AA.7E.55982.E0235144@pb1.pair.com...
    Hola Gabi,

    lo ultimo que se me ocurre es que el servidor no te esta trabajando:
    prueba enviando un solo mail como lo indica el manual de PHP.

    mail("tu_mail@servidor.com","el encabezado","el mensaje",$header);

    en el $header utiliza tu header pero puedes probar colocar solo "\n" en
    vez de "\r\n".

    Saludos

    Carlos

    gabi wrote:
    Estoy trabajando con phpmailer
    El caso es que no lo controlo mucho y tengo los siguientes errores:
    1-No puedo enviar los emails a las direcciones de la base de datos , me
    da
    el siguiente error:
    "Problemas enviando correo electrónico a
    Language string failed to load: recipients_failedbegabi@telefonica.net,
    info@begabi.com, begabi@terra.com"
    2-En el formulario del email utilizo un htmlarea y no me aparecen las
    imágenes embebidas
    Me estoy rompiendo la cabeza y no sé donde esta el error o que
    propiedades o
    metodos me faltan por poner o pongo mal.
    El código es el siguiente:
    <?
    // primero hay que incluir la clase phpmailer para poder instanciar
    //un objeto de la misma
    require "includes/class.phpmailer.php";
    if($_POST['asunto']){
    include("../includes/configuracion.php");
    include("../includes/funciones.php");
    $cnx = conectar();
    $query_Tabla = "SELECT email FROM emails ORDER BY id ASC";
    $Tabla = mysql_query($query_Tabla, $cnx) or die(mysql_error());
    //elaboramos cadena de emails
    $losemails="";
    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();
    };
    }
    //elaboramos cadena de emails

    //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 = "mail.elmussol.com";

    //Le indicamos que el servidor smtp requiere autenticación
    $mail->SMTPAuth = true;

    //Le decimos cual es nuestro nombre de usuario y password
    $mail->Username = "gabi";
    $mail->Password = "waikiki";

    //Indicamos cual es nuestra dirección de correo y el nombre que
    //queremos que vea el usuario que lee nuestro correo
    $mail->From = "webmaster@elmussol.com";
    $mail->FromName = "EL MUSSOL";

    //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 ($losemails);

    //Asignamos asunto y cuerpo del mensaje
    //El cuerpo del mensaje lo ponemos en formato html, haciendo
    //que se vea en negrita
    $mail->Subject = "$asunto";
    $mail->Body = "$propuesta";

    //Definimos AltBody por si el destinatario del correo no admite email
    con
    formato html
    $mail->AltBody = "Tu editor de correo no acepta html";

    //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";
    }

    ?>
    Gracias
    Gabi
  • Gabi at Mar 18, 2006 at 4:28 am
    Mi servidor dice que solo puedo enviar 200 direcciones en cada email.
    ¿Cómo puedo hacer en el código de phpmailer para que me envie más de 200?
    Gracias
    Gabi
  • Rafa Couto at Mar 18, 2006 at 6:08 am

    Mi servidor dice que solo puedo enviar 200 direcciones en cada email.
    ¿Cómo puedo hacer en el código de phpmailer para que me envie más de 200?

    ¿Tal vez coger de 200 en 200 direcciones y enviar varias veces el mismo
    correo?

    ///// componer el correo
    for ($vez = (count($direcciones) - 1) / 200; $vez >= 0; $vez -= 1) {
    $direcciones_200 = array_splice($direcciones, $vez * 200, 200);
    ///// enviar a 200 direcciones el correo
    }


    echo 'Saludos';

    --
    Rafa Couto (caligari)
    mailto:rafacouto @gmail.com
    Linux user #99126 (http://counter.li.org)
  • Devta singh at Mar 18, 2006 at 10:45 am
    El problema de enviar 200 a la vez (suponiendo que las pongas en un campo
    BCC , es decir con copia oculta) es que no sabras cuales llegan o tienen
    errores.

    phpMailer tienes unas funciones donde le especificas las direcciones,
    add_address o algo así (hablo memoria), simplemente al objeto phpmailer le
    haces tantas llamadas a esa función como direcciones quieras añadir.
    Seguramente haya una función especifica para BCC.

    Lo puedes ver en los ejemplos de phpmailer.

    Devta
  • carlos Medina at Mar 19, 2006 at 5:25 pm

    gabi wrote:
    Mi servidor dice que solo puedo enviar 200 direcciones en cada email.
    ¿Cómo puedo hacer en el código de phpmailer para que me envie más de 200?
    Gracias
    Gabi

    Hola Gabi,

    intenta de pensar un poco y meterle cabeza al asunto. Hazte un bucle con
    el que puedas trabajar cada mail

    Saludos

    Carlos

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-general-es @
categoriesphp
postedMar 13, '06 at 1:44a
activeMar 19, '06 at 5:25p
posts8
users4
websitephp.net

People

Translate

site design / logo © 2022 Grokbase