Foros del Web » Programando para Internet » PHP »

No puedo enviar emails - PhpMailer

Estas en el tema de No puedo enviar emails - PhpMailer en el foro de PHP en Foros del Web. No puedo enviar enviar emails usando phpmailer , el codigo es: Código PHP: <?    // 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    ...
  #1 (permalink)  
Antiguo 12/08/2007, 18:39
 
Fecha de Ingreso: marzo-2006
Mensajes: 41
Antigüedad: 18 años, 1 mes
Puntos: 0
No puedo enviar emails - PhpMailer

No puedo enviar enviar emails usando phpmailer , el codigo es:

Código PHP:
<?
  
// 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 "mail.losvatos.com.ar";

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

  
//Le decimos cual es nuestro nombre de usuario y password
  
$mail->Username "[email protected]"
  
$mail->Password "password";

  
//Indicamos cual es nuestra dirección de correo y el nombre que 
  //queremos que vea el usuario que lee nuestro correo
  
$mail->From "[email protected]";
  
$mail->FromName "Aqui debe ir su nombre";

  
//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("[email protected]");

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

me tira el siguiente error:
Problemas enviando correo electrónico a
SMTP Error: Could not authenticate


hasta ahora no pude mandar nunca un mail con php, probe la funcion mail() pero no me anduvo de ninguna forma ahora con PhpMailer tampoco puedo.
Gracias
  #2 (permalink)  
Antiguo 13/08/2007, 02:32
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: No puedo enviar emails - PhpMailer

Pues en el mensaje de error tienes la respuesta. No se ha podido autentificar.
¿Estás seguro que los datos son los correctos? (email, user, password)
  #3 (permalink)  
Antiguo 13/08/2007, 07:57
 
Fecha de Ingreso: marzo-2006
Mensajes: 41
Antigüedad: 18 años, 1 mes
Puntos: 0
Re: No puedo enviar emails - PhpMailer

Si, son los mismos datos q tengo en el outlook express.
  #4 (permalink)  
Antiguo 13/08/2007, 22:04
 
Fecha de Ingreso: marzo-2006
Mensajes: 41
Antigüedad: 18 años, 1 mes
Puntos: 0
Re: No puedo enviar emails - PhpMailer

Si no es de esta forma, de que otra forma puedo mandar mails? porque hace bastante tiempo que quiero mandar mails con php y me es imposible
  #5 (permalink)  
Antiguo 13/08/2007, 22:33
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Re: No puedo enviar emails - PhpMailer

Hola que tal, yo tengo una web publicada y puedo mandar email muy bien, te paso los codigos,

el primero:

Esta pagina la podes llamar como quieras.

1 la validacion del o de los campos

<form action="enviar.php" method="post" name="Order" target="_self" onSubmit="return valida_data();">
<script language="JavaScript">


function valida_data(){
if (document.Order.email.value == ""){
alert(" E-MAIL");
document.Order.email.focus();
return false
}//end if



}//end if

</script>


2 segundo el campo que va en la misma pagina u hoja que el codigo anteios,


<td width="186" rowspan="2" valign="top" bgcolor="#FF9900">
<form method="POST" action="--WEBBOT-SELF--">
<!--webbot bot="SaveResults" U-File="fpweb:///_private/form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td>
<p align="center" style="margin-top: 0; margin-bottom: 0">
<font size="2" face="Tahoma"><strong>E-mail</strong></font></td>
<td width="140">
<p style="margin-top: 0; margin-bottom: 0">
<font color="#FF9900" face="Tahoma">
<input name="email" id="email" style="float: right; border: 1px solid #FF9900" size="19">
</font></td>
</tr>
</table>
<p style="margin-top: 0; margin-bottom: 0" align="center">
<input type="submit" value="Enviar" name="B1" style="border: 1px solid #000000; background-color: #FFFFFF"></p>
</form>



y para mandar el email hice un archivo que se llama enviar.php


<?php
$ip = $REMOTE_ADDR ;
$dia=date("d/m/20y");
$asunto = "Mensaje";
$msje = "

--------- Mensaje desde PEPITO -------------------------

Email : $email

-------------------------------------------------------
Fecha de envio de email : $dia
--------------------------------------------------------
";



$para = '[email protected]';
$cabeceras = "MIME-Version: 1.0\r\n";
$cabeceras = "Content-type: text/html; charset=iso-8859-1\r\n";
$cabeceras = "From: PEPITO";
mail($para, $asunto, $msje, $cabeceras);
echo "Si su E-mail es ------ $email ----- , recibira Ofertas de productos y novedades -";


?>



ESTE ESTA ECHO CON UN SOLO CAMPO, SI QUERES AGREGARLE MAS CAMPOS, EN EL CODIGO ANTERIOR QUE VA EN OTRA PAGINA, PODEA AGREGAR EL CAMPO NOMBE
Y EN EL ARCHIVO enviar.php AGREGAS LA VARIABLE $NOMBRE.. DEBAJO DE $EMAIL para que te ubiques....

bueno espero que te sirva
saludos a todos
  #6 (permalink)  
Antiguo 13/08/2007, 22:53
 
Fecha de Ingreso: junio-2007
Mensajes: 13
Antigüedad: 16 años, 10 meses
Puntos: 1
Re: No puedo enviar emails - PhpMailer

como quieres tu formulario?, yo hize uno que tiene los siguientes campos, "Asunto, Nombre y Apellido, direccion, telefono, empresa, email, empresa" bueno enfin, si kieres kitar campos es muy facil, bueno, si te interesa mandame un mensaje privado y te lo puedo pasar si gustas.
  #7 (permalink)  
Antiguo 14/08/2007, 23:02
 
Fecha de Ingreso: marzo-2006
Mensajes: 41
Antigüedad: 18 años, 1 mes
Puntos: 0
Re: No puedo enviar emails - PhpMailer

Gracias por la ayuda pero me canse de probar con la funcion mail() y le pregunte a mi servidor porque no funcionaba y me respondieron que tenian filtros anti-spam que solo me dejaban mandar mails a una cuenta una cuenta especifica, por ejemplo [email protected] que ellos me dan y es verdad solo a esta cuanta lo podia mandar, pero quiero mandarlo a cualquier direccion de correo.
Por eso necesito otra forma de mandarlo que no sea a traves de la funcion mail().
  #8 (permalink)  
Antiguo 16/08/2007, 21:31
 
Fecha de Ingreso: marzo-2006
Mensajes: 41
Antigüedad: 18 años, 1 mes
Puntos: 0
Re: No puedo enviar emails - PhpMailer

Alguien me puede brindar alguna ayuda?
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




La zona horaria es GMT -6. Ahora son las 19:26.