Article View: es.comp.os.linux.programacion
Article #521Re: Función mail() php y autenticación en servidor smtp remoto
From: Jesus de las Heras Blanco
Date: Tue, 17 Apr 2007 21:48
Date: Tue, 17 Apr 2007 21:48
77 lines
3318 bytes
3318 bytes
La funcion mail() de PHP no soporta autenticacion SMTP. Vas a tener que
cambiar algo de codigo, sin embargo, puedes cambiar algo minimo. Puedes
crear una funcion mail2() que recoja los mismos argumentos que la
funcion mail original e internamente en la funcion mail2 hacer uso de
phpmailer http://phpmailer.sourceforge.net/
De esa forma cuando tengas que aplicar actualizaciones con un simple sed
podras cambiar todas las llamadas a mail() por mail2()
Si quieres usar las cabeceras_extras tendras que separar los parametros
que la aplicacion pasa y a�adirlos donde corresponda.
Algo as�:
function mail2($para,$asunto,$mensaje,$cabeceras_extras="") {
require "includes/class.phpmailer.php";
$mail = new phpmailer();
$mail->PluginDir = "includes/";
$mail->Mailer = "smtp";
$mail->Host = "smtp.hotpop.com";
$mail->SMTPAuth = true;
$mail->Username = "micuenta@HotPOP.com";
$mail->Password = "mipassword";
$mail->From = "micuenta@HotPOP.com";
$mail->FromName = "Tu nombre";
$mail->Timeout=30;
$mail->AddAddress($para);
$mail->Subject = $asunto;
$mail->Body = $mensaje;
$mail->AltBody = $mensaje;
$exito = $mail->Send();
$intentos=1;
while ((!$exito) && ($intentos < 5)) {
sleep(5);
//echo $mail->ErrorInfo;
$exito = $mail->Send();
$intentos=$intentos+1;
}
if(!$exito)
{
return false;
}
else
{
return true;
}
}
Un saludo,
Jesus de las Heras Blanco
http://www.mainake.org
Linux Counter #305668
"Dios no juega a los dados con el universo".
Albert Einstein
cirudinezidane@gmail.com escribi�:
> Hola!
>
> Quiero probar el software de meneame http://meneame.net y tengo un
> problemilla con el correo. Resulta que utiliza la funci�n mail() de
> php para enviar correos electronicos cuando te das de alta etc. y yo
> tengo una cuenta de correo smtp en un servidor remoto que usa
> autenticaci�n. �Puedo de alguna manera usar esa funci�n para enviar
> correo desde el servidor remoto? Lo comento para no tener que cambiar
> mucho el c�digo del software meneame.
>
> Saludos y muchas gracias.
>
Technical Details
Message-ID:
<462540C7.8020906@yahoo.es>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newsfeed00.sul.t-online.de!t-online.de!newsfeed.freenet.de!news.albasani.net!news.ya.com!yacom!not-for-mailReferences:
<1176830579.661905.309230@y5g2000hsa.googlegroups.com>Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,eb3d250848eff92e X-Google-Attributes: gidf86c8,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newsfeed00.sul.t-online.de!t-online.de!newsfeed.freenet.de!news.albasani.net!news.ya.com!yacom!not-for-mail From: Jesus de las Heras Blanco <jherasb@yahoo.es> Newsgroups: es.comp.os.linux.programacion Subject: Re: Función mail() php y autenticación en servidor smtp remoto Date: Tue, 17 Apr 2007 23:48:55 +0200 Organization: ya.com internet factory Lines: 77 Message-ID: <462540C7.8020906@yahoo.es> References: <1176830579.661905.309230@y5g2000hsa.googlegroups.com> NNTP-Posting-Host: 84.76.130.79 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: news.ya.com 1176846423 25898 84.76.130.79 (17 Apr 2007 21:47:02 GMT) X-Complaints-To: newsmaster@ya.com NNTP-Posting-Date: Tue, 17 Apr 2007 21:47:02 +0000 (UTC) User-Agent: Thunderbird 1.5.0.10 (X11/20070403) In-Reply-To: <1176830579.661905.309230@y5g2000hsa.googlegroups.com> X-Enigmail-Version: 0.94.2.0