Foros del Web » Programando para Internet » PHP »

Pasar valor a $mail->Username de Phpmailer

Estas en el tema de Pasar valor a $mail->Username de Phpmailer en el foro de PHP en Foros del Web. Estimados, junto con el saludo quiero pedirles me ayuden a resolver lo siguiente : Estoy usando este code, para la libreira Phpmailer : http://blog.unijimpe.net/enviar-email-con-php-y-gmail/ Y ...
  #1 (permalink)  
Antiguo 18/09/2011, 12:38
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Pasar valor a $mail->Username de Phpmailer

Estimados, junto con el saludo quiero pedirles me ayuden a resolver lo siguiente :

Estoy usando este code, para la libreira Phpmailer :

http://blog.unijimpe.net/enviar-email-con-php-y-gmail/

Y funciona perfecto. Como notarán al usar gmail se usan valores como estos :

Código PHP:
$mail->Username "[email protected]";
$mail->Password "userpass"
Como el codigo lo uso en varias partes, lo que quiero hacer es crear un php aparte con los valores :

Código PHP:
$user="[email protected]";
$pass="userpass"
Y en un include llamarlo en la pagina donde tengo el codigo de phpmailer y pasarlo así :

Código PHP:
$mail->Username($user);
$mail->Password($pass); 
Todo con la finalidad de tener los valores de user y password en un solo archivo para que cuando que haya que cambiarlo no tenga que ir a cada una de las páginas.



Pero al usar :


Código PHP:
$mail->Username($user);
$mail->Password($pass); 
Me sale un error..................alguien sabe cual sería la forma correcta de pasar los valores ? Phpmailer es orientado a objetos y no se como es.

Porque con esto no funciona :


Código PHP:
$mail->Username($user);
$mail->Password($pass); 

Gracias de antemano.
__________________
EL LIMITE ES EL UNIVERSO
  #2 (permalink)  
Antiguo 18/09/2011, 14:20
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Pasar valor a $mail->Username de Phpmailer

Parece ser que solo tienes que usar el formato del primer codigo que pusiste:

Código PHP:
Ver original
  1. // Ya sea que los obtengas de archivo o base de datos
  2. $pass = '112545!!!!·$ADKAadd';
  3.  
  4. // Simplemente los asignas
  5. $mail->Username = $user;
  6. $mail->Password = $pass;
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 25/09/2011, 11:42
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Respuesta: Pasar valor a $mail->Username de Phpmailer

Hola, gracias por la ayuda pero no funciona.

Código PHP:
Me sale un error de "SMTP Error: Could not authenticate. " 
Alguna idea ? Saludos.
__________________
EL LIMITE ES EL UNIVERSO
  #4 (permalink)  
Antiguo 25/09/2011, 12:11
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: Pasar valor a $mail->Username de Phpmailer

Entonces el Usuario/Contraseña son incorrectos
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #5 (permalink)  
Antiguo 25/09/2011, 15:33
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Respuesta: Pasar valor a $mail->Username de Phpmailer

No son incorrectos, están Ok y sigue sin funcionar..........lo que tengo es un archivo llamado gmail.php con :

Código PHP:
<?php
$gmail_account_sis 
'[email protected]';
$gmail_password_sis 'password';
?>
Desde la pagina que uso phpmailer la invoco :

Código PHP:
require('../Connections/gmail.php'); 
Y paso las variables asi :

Código PHP:
$mail->Username=$gmail_account_sis;
$mail->Password=$gmail_password_sis
Pero me saca el error :

Código PHP:
SMTP ErrorCould not authenticate

Será que en vez de usar "require" hay que llamarlo de otra forma ?

Saludos.
__________________
EL LIMITE ES EL UNIVERSO
  #6 (permalink)  
Antiguo 28/09/2011, 16:46
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Respuesta: Pasar valor a $mail->Username de Phpmailer

No funciona definitivamente,

Intentè de esta otra forma :

Código PHP:
<?php
define
("gmail_account_sis","[email protected]");
define("gmail_password_sis","asdfasd");
?>
Pero debe ser algo del àmbito de las variables ya que phpmailer es orientado a objetos.

Debe existir alguna forma, se reciben ideas.


Saludos.
__________________
EL LIMITE ES EL UNIVERSO
  #7 (permalink)  
Antiguo 28/09/2011, 19:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Pasar valor a $mail->Username de Phpmailer

Y si muestras todo el codigo?, digo, el error tambien podria ser que no especificas el puerto adecuado para el servidor SMTP de gmail.
__________________
- León, Guanajuato
- GV-Foto
  #8 (permalink)  
Antiguo 28/09/2011, 19:51
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Respuesta: Pasar valor a $mail->Username de Phpmailer

Bien, en el archivo gmail.php tengo :

Código PHP:
<?php
define
("gmail_account_sis","[email protected]");
define("gmail_password_sis","asdfasd");
?>
En la pagina donde uso phpmailer lo llamo asi :

Código PHP:
<?php require_once('gmail.php'); ?>
Y mas abajo en el script lo uso así :

Código PHP:
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth true;
$mail->SMTPSecure="ssl";
$mail->Host="smtp.gmail.com";
$mail->Port="465";
$mail->Username=$gmail_account_sis;
$mail->Password=$gmail_password_sis;

Y abajo el resto.... 

Aclaro que usando directamente los valores al estilo :

Código PHP:
$mail->Username="[email protected]";
$mail->Password="asdfasd"
Me funciona perfectamente, con adjuntos y todo..........la idea en general es dejar el login/password en un archivo externo ya que phpmailer lo utilizo muchas veces en el sistema y cuando tenga que cambiar la cuenta de smtp sería obviamente mucho mas comodo cambiarlo solo en gmail.php


Saludos.
__________________
EL LIMITE ES EL UNIVERSO
  #9 (permalink)  
Antiguo 28/09/2011, 22:07
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Pasar valor a $mail->Username de Phpmailer

Sabes lo que hace define() ?... define constantes, no variables, entonces, si eliminas el $ cuando realizas las asignaciones, seguro funcionara. Ahora, por comodidad y legibilidad, generalmente las constantes se crean en mayusculas, lo que las hace facilmente identificables:

Código PHP:
Ver original
  1. define("GMAIL_ACCOUNT_SIS","[email protected]");
  2. define("GMAIL_PASSWORD_SIS","asdfasd");
  3.  
  4. // Despues, en tu script:
  5. $mail->Username=GMAIL_ACCOUNT_SIS;
  6. $mail->Password=GMAIL_PASSWORD_SIS;
__________________
- León, Guanajuato
- GV-Foto
  #10 (permalink)  
Antiguo 28/09/2011, 22:25
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Respuesta: Pasar valor a $mail->Username de Phpmailer

Muchas Gracias Triby.............funcionó perfecto de esta manera ! Saludos.
__________________
EL LIMITE ES EL UNIVERSO

Etiquetas: pasar, phpmailer
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 12:40.