Árbol de páginas
Skip to end of metadata
Go to start of metadata

Estás viendo una versión antigua de esta página. Ve a la versión actual.

Comparar con el actual Ver el historial de la página

« Anterior Versión 3 Actual »

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)

(info.) 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

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)

(info.) 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.

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

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" ;
    }
   
?>
  • Sin etiquetas