Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-03-2011
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
aams01,

Te pongo un ejemplo que uso:

Código PHP:
<?php
/*
 * Para ejecutar este ejemplo, hay que colocar la carpeta del phpmailer v5.1
 * en el mismo directorio que este script.
 *
 * Asignar a SMTP_USERNAME y SMTP_PASSWORD los valores de la cuenta
 * de gmail desde la que envian el correo.
 */

define('DIR_BASE'dirname(__FILE__) . DIRECTORY_SEPARATOR);
define('DIR_PHPMAILER'DIR_BASE 'phpmailer_v5.1' DIRECTORY_SEPARATOR);

define('SMTP_USERNAME''usuario');
define('SMTP_PASSWORD''password');

require_once(
DIR_PHPMAILER 'class.phpmailer.php');

$mail = new PHPMailer();

$mail->isSMTP(true);

$mail->SMTPAuth   true;
$mail->SMTPSecure "ssl";
$mail->Host       "smtp.gmail.com";
$mail->Port       465;
$mail->Username   SMTP_USERNAME;
$mail->Password   SMTP_PASSWORD;

$mail->Subject 'Prueba de correo';
$mail->Body 'Hola mundo';

// Agregar destinatario(s)
$mail->AddAddress('usuario@servidor');

return 
$mail->Send();
Nota que en SMTPSecure yo uso ssl en lugar de tls y que el puerto es 465 y no 587.

También debes asegurarte que tu servidor tiene instalada la extensión openssl de php.

// Saludos
Responder Con Cita
  #2  
Antiguo 29-03-2011
Avatar de aams01
aams01 aams01 is offline
Miembro
 
Registrado: ago 2010
Posts: 44
Poder: 0
aams01 Va por buen camino
Cool

Hola ya logre solucionar el problema era como tu decias Roman era cuestion de configurar el php.ini faltaba retirar ";" extension=php_openssl.dll
Dejo el archivo y su configuracion por si a alguien le ayuda, tomando encuenta que se utilizo la clase de phpmailer tal cual se descargo sin modificar, la cuenta gmail fue configurada en su seccion configuracion (Reenvío y correo POP/IMAP) Solamente Habilitar IMAP:

Código PHP:
<?
  
include("include/class.phpmailer.php");
  include(
"include/class.smtp.php");
  
  
$mail = new phpmailer();
  
$mail->SetLanguage("es""include/language/"); 

  
$mail->mailer "smtp";
  
$mail->IsSMTP();
  
$mail->SMTPDebug  1// para q muestre errorers de SMTP

  //Asignamos a Host el nombre de nuestro servidor smtp
  
$mail->SMTPAuth true
 
// Lo siguiente es conforme a la configuracion dada por gmail 
  
$mail->SMTPSecure 'tls';
  
$mail->Host 'smtp.gmail.com';
  
$mail->Port 587;
  
  
//Le indicamos que el servidor smtp requiere autenticación
  //Le decimos cual es nuestro nombre de usuario y password
  
$mail->Username 'angel.mendez.saucedo@gmail.com'// Correo Gmail
  
$mail->Password 'angelmendezsaucedo01';       // Contraseña del correo

  //Indicamos cual es nuestra dirección de correo y el nombre que 
  //queremos que vea el usuario que lee nuestro correo
  
$mail->From 'angel.mendez.saucedo@gmail.com';      
  
$mail->FromName 'Angel Mendez';

  
//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
  
$direccion=  'dragondeagua01@gmail.com';
  
$mail->AddAddress($direccion);

  
//Asignamos asunto y cuerpo del mensaje
  //El cuerpo del mensaje lo ponemos en formato html, haciendo 
  //que se vea en negrita
  
$mail->Subject "Modificacion 27 Correo 4";
  
$mail->IsHTML(true);
  
$mail->Body "<b>Correo mandado mODIFICACION 27 Correo4 windraaaa</b>";

  
//Definimos AltBody por si el destinatario del correo no admite email con formato html 
  
$mail->AltBody "Correo mandado mODIFICACION 27 Correo4";

  
//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);   
         
$exito $mail->Send();
         
$intentos=$intentos+1;    
   }

   if(!
$exito)
   {
        echo 
"Problemas enviando correo electrónico a ".  $direccion;
        echo 
"<br/>".$mail->ErrorInfo;    
   }
   else
   {
        echo 
"Mensaje enviado correctamente";
   } 
?>
Gracias a todos por su participacion y su apoyo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Configuracion D4php llonigualker Internet 0 03-03-2009 17:58:14
Emails, error de conexion en algunas PC nfrfabian Internet 1 19-09-2007 17:03:29
d4php No funciona en la web brandolin PHP 2 06-07-2007 18:57:20
enviar emails jmlifi Varios 9 25-11-2005 21:16:37
Cadenas de emails santana Humor 1 06-09-2004 16:38:00


La franja horaria es GMT +2. Ahora son las 09:32:24.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi