Section |
---|
Column |
---|
| Como enviar correos dende php en webs.uvigo.es |
Column |
---|
| Panel |
---|
| Tabla de contenidos |
---|
maxLevel | 2 |
---|
indent | 15px |
---|
style | square |
---|
|
|
|
|
Envío de correo dende PHP en webs.uvigo.es
Datos para o envío de correos:
- Servidor: localhost.uvigo.es (localhost, ou 127.0.0.1)
- Tipo de envío: SMTP
- Autentificación: NON
Envío de correos coa función mail (PHP)
De ser posible e se é un desenrolo propio recomendamos que empreguen outras alternativas, como a función Mail de PEAR ou librerías como phpmailer.
O envío dende a función mail() de php é sinzelo, pero limitado no tocante ás posibilidades que da. O uso sería como o seguinte
Bloque de código |
---|
language | php |
---|
title | mail1.php |
---|
|
$res = mail ( "destinatario@uvigo.es", "Proba do " . date("d/m/Y") , "Proba de envio de correo", "From: remitente@uvigo.es\r\nTo: destinatario@uvigo.es\r\nX-Mailer: Prueba 1.0" ) ;
if ( $res == true ) {
print "OK: Correo enviado <br/>\n" ;
}
else {
print "ERRO: Erro o enviar o correo<br/>\n" ;
} |
Envío de correos coa clase Mail de PEAR (PHP)
En principio e de ser un desenrolo propio, por ser unha función incluída en PEAR e con bastantes opcións, parece o mecanismo máis axeitado para enviar correos dende PHP.
Recomendamos que se utilice:
- smtp: Indicar ó crear o obxecto (Mail::factory) que se empregará "smtp"
- Servidor local: 127.0.0.1, ou "localhost", ou "localhost.uvigo.es"
Ten moitas máis opcións que se poden consultar nesta páxina.
Bloque de código |
---|
language | php |
---|
title | mail2.php |
---|
|
<?php
require ( "Mail.php" ) ;
require ( "Mail/mime.php" ) ;
$message = new Mail_mime();
$message->setTXTBody ( "Proeba de envio de correos" ) ;
$mimeparams = array ( "text_encoding" => "7bit",
"text_charset" => "UTF-8" ) ;
$headers = array ( "From" => "remitente@uvigo.es",
"To" => "destinatario@uvigo.es",
"Subject" => "Proba de envio de correo " . time(),
"X-Mailer"=> "Mi App 1.0",
"Return-Path" => "remitente@uvigo.es" ) ;
$body = $message->get ( $mimeparams ) ;
$headers = $message->headers ( $headers ) ;
$to = "destinatario@uvigo.es" ;
$smtp = Mail::factory ( 'smtp', array ('host' => "127.0.0.1", 'port'=>25 )) ;
$mail = $smtp->send ( $to, $headers, $body ) ;
if ( PEAR::isError ( $mail )) {
print "ERRO: O enviar o correo <br/>\n" ;
}
else {
print "OK: correo enviado<br/>\n" ;
}
?> |
Envío de correos coa librería phpmailer
Esta é outra opción das moitas que hai para enviar correos dende PHP. Pode descargarse dende este enlace
Bloque de código |
---|
language | php |
---|
title | mail3.php |
---|
|
<?php
require 'phpmailer/phpmailer.php';
$mail = new phpmailer();
$mail->PluginDir = "phpmailer/";
$mail->Mailer = "smtp";
$mail->Host = "127.0.0.1" ;
$mail->SMTPAuth = false ;
$mail->Timeout = 50 ;
$mail->From = "remitente@uvigo.es" ;
$mail->FromName = "Pedro Palotes" ;
$mail->AddAddress ( "destinatario@uvigo.es" ) ;
$mail->AddCC ( "destinatario1@uvigo.es" ) ;
$mail->Subject = 'Proba de envio de mensaxe do ' . date("d/m/Y");
$mail->Body = "Proba de envio de correo." ;
// Envia a mensaxe
$res = $mail->Send();
if ( $res ) {
print "OK: correo enviado<br/>\n" ;
}
else {
print "ERRO: O enviar o correo <br/>\n" ;
}
?> |