Foros del Web » Programando para Internet » PHP »

Php y phpmailer

Estas en el tema de Php y phpmailer en el foro de PHP en Foros del Web. Buenas a todos: Creo, que un correo como este ya se ha enviado. Tengo un problema con un sitio Web donde estoy utilizando la plataforma ...
  #1 (permalink)  
Antiguo 19/06/2008, 12:50
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 7 meses
Puntos: 0
Pregunta Php y phpmailer

Buenas a todos:

Creo, que un correo como este ya se ha enviado. Tengo un problema con un sitio Web donde estoy utilizando la plataforma xampp(MySQL, PHP5 y Apache), sobre Windows XP SP 2. El equipo en el cual trabajo hacer parte de un grupo de trabajo en la institucion donde trabjo. Quiero poder enviar mediante la aplicacion que estoy desarrollando un correo. Tengo cuenta en gmail y quiero enviar un correo a otra cuenta. Adiciono el codigo que utilizo. Por favor, no se que falta o cual es el error. Esto es para mi proyecto de graduacion. Y es uno de los modules que me hace falta, poder enviar correos desde la aplicacion a otos correos. Espero su pronta ayuda:
El codigo:

<?
// 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.gmail.com";

//Asignamos a Host el nombre de nuestro servidor smtp
$mail->Host = "smtp.gmail.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 = "[email protected]";
$mail->Password = "clave";

//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 = "Nombre Usuario";

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

El error que arroja es:

Problemas enviando correo electrónico a
smtp.gmail.com mailer is not supported

Agradezco su pronta respuesta
  #2 (permalink)  
Antiguo 19/06/2008, 13:30
 
Fecha de Ingreso: mayo-2005
Mensajes: 188
Antigüedad: 19 años
Puntos: 6
Respuesta: Php y phpmailer

Buscando en google "phpmailer gmail": http://www.buayacorp.com/archivos/phpmailer-con-gmail/
  #3 (permalink)  
Antiguo 19/06/2008, 13:35
Avatar de jariza  
Fecha de Ingreso: agosto-2003
Ubicación: Málaga
Mensajes: 1.449
Antigüedad: 20 años, 8 meses
Puntos: 10
Respuesta: Php y phpmailer

Cambia esto:
Código:
$mail->Mailer = "smtp.gmail.com";
por esto:
Código:
$mail->Mailer = "smtp";
  #4 (permalink)  
Antiguo 19/06/2008, 13:45
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Php y phpmailer

Gracias JARIZA

Cambie las lineas que me dijiste y ahora el error que me arroja es:

Resource id #4Problemas enviando correo electrónico a
SMTP Error: Could not authenticate


Ahora que sera???
  #5 (permalink)  
Antiguo 19/06/2008, 13:48
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Php y phpmailer

Gracias juanfuentes:

Descargue el archivo comprimido que hay en el enlace que usted me dio, y el archivo test.php quedo de la siguiente forma:

<?php

require_once 'class.phpmailer.php';

$mail = new PHPMailer ();

$mail -> From = "[email protected]";
$mail -> FromName = "Yesid";
$mail -> AddAddress ("[email protected]");
$mail -> Subject = "Test";
$mail -> Body = "<h3>From GMail!</h3>";
$mail -> IsHTML (true);

$mail->IsSMTP();
$mail->Host = 'ssl://smtp.gmail.com';
$mail->Port = 465;
$mail->SMTPAuth = true;
$mail->Username = '[email protected]';
$mail->Password = '**123**';

if(!$mail->Send()) {
echo 'Error: ' . $mail->ErrorInfo;
}
else
{
echo 'Mail enviado!';
}
?>


Y el error que me sale es:

Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://smtp.gmail.com:465 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?) in C:\xampp\htdocs\gmailphpmailer\class.smtp.php on line 105
Error: *Language string failed to load: connect_host


Muchas gracias por su ayuda, pero ahora cual sera el error???
  #6 (permalink)  
Antiguo 19/06/2008, 16:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Php y phpmailer

Les recuerdo que tengo la plataforma montada en un equipo con Windows XP y el programa es xampp
  #7 (permalink)  
Antiguo 19/06/2008, 21:41
Avatar de jariza  
Fecha de Ingreso: agosto-2003
Ubicación: Málaga
Mensajes: 1.449
Antigüedad: 20 años, 8 meses
Puntos: 10
Respuesta: Php y phpmailer

Al phpmailer se le atraganta eso del SSL, échale un ojo a esto:
http://www.buayacorp.com/archivos/phpmailer-con-gmail/

Aunque el error que das tiene toda la pinta de ser que no tienes OpenSSL compilado con PHP.
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 08:19.