Come mandare una mail in PHP

tramite: O2O
Difficoltà: facile
16

Introduzione

Inviare un'email in PHP, per un programmatore abbastanza pratico del linguaggio in HTML, è un'operazione abbastanza semplice ed intuitivo. Questo è possibile in quanto è presente, di default, l'apposita funzione mail nelle librerie, senza che sia necessario procedere all'import di altre. Questa componente consente l'invio di messaggi di posta elettronica con codifica MIME e, pertanto, permette di poter allegare dei file di testo oppure delle immagini anche complesse. Lo script e/o la pagina PHP, per funzionare in maniera corretta, devono essere installate in un dominio provvisto di server SMTP, ovvero dotato di un server di posta in uscita. Infatti, in caso contrario non sarà possibile inviare alcuna email. Ovviamente viene da chiedersi quali sono i suoi principali utilizzi. Per prima cosa, tale funzione viene usata nel contact form, che consente agli utenti di inviare una mail direttamente dal sito. Oppure è possibile effettuare l'invio periodico automatizzato o manuale di newsletter ad utenti registrati, nonché la ricezione e la spedizione di notifiche legate all'utilizzo dei contenuti di un sito. In questa guida, pertanto, attraverso vari passaggi spiegheremo come mandare una mail in PHP.

26

Quali sono i parametri richiesti per l'invio di email tramite PHP

PHP necessita di 3 parametri obbligatori. Uno di questi è l'indirizzo email di destinazione o, se ce ne fossero più di uno, occorrono gli indirizzi email separati dalla virgola. In secondo luogo è necessario disporre dell'oggetto del messaggio. Il terzo parametri richiesto è il testo della mail. Esiste la possibilità di inserire un quarto parametro opzionale, che riguarda le intestazioni (ossia "headers"), necessarie per l'invio di ulteriori dati supplementari, come la mail in formato HTML oppure il set di caratteri. Dal punto di vista della restituzione, essa si traduce in un valore booleano del tipo Vero/Falso. Il valore sarà impostato su Vero, nel caso in cui l'email sia stata inviata con successo. Invece è settato su Falso, se ci si trova di fronte ad un mancato invio (ad esempio per un errore tipo "warning").

36

Qual è la versione più semplice per l'invio di una mail in PHP

A seguito entreremo nel dettaglio del codice PHP. Premettiamo che quando si è di fronte ai simboli "//", si introducono nei commenti, che hanno la finalità di essere d'aiuto al programmatore, nel momento in cui si ritrova a riguardare il codice da lui scritto. Nella sua versione più semplice, il meccanismo di funzionamento di una mail in PHP si presenta con il seguente script:$destinatario= 'tuoindirizzo@email. It'
$oggetto = 'email dal tuo sito'
// se il form è stato inviato
if (isset ($_POST ['submit']))
// verifichiamo che i campi invariati non siano vuoti
if (trim ($_POST ['nome'])== ' ' or trim ($_POST['messaggio'])==' ')
echo 'I campi nome e messaggio sono obbligatori';
// altrimenti
else
// scriviamo il testo della mail
$testo = 'Nome: '. Strip_tags (trim (stripslashes ($_POST['nome']))). '\r\n';
$testo .= 'Messaggio: '. Strip_tags (trim (strpslashes ($_POST['messaggio'])));
// inviamo la mail verificandone il successo
if (!@mail ($destinatario, $oggetto, $testo))
echo "Problemi nell'invio della mail";
else
echo 'Email inviata correttamente';
"" method="post">
Nome:
"text" name="nome">
Messaggio:
"messaggio">
"submit" name="submit" value="invia">.

Continua la lettura
46

Quali sono i parametri opzionali più utilizzati

Una volta impostati correttamente gli script riferiti ai primi tre parametri obbligatori (ossia l'indirizzo, l'oggetto ed il testo della mail), si può procedere con l'inserimento del quarto parametro opzionale, ossia gli headers. I più importanti parametri li andremo a citare a seguire. Uno di questi è 'From: mittente', che fornisce le indicazioni riguardanti il mittente. Un altro parametro opzione molto utilizzato è 'Reply-to: indirizzo@email. It', che indica l'indirizzo a cui si dovranno inviare le risposte. Poi dobbiamo citare 'Content-Type: text/html', che consiste nell'impostazione della tipologia di contenuto (in questo caso in formato html). Infine, possiamo trovare 'Charset=iso-8859-1', che corrisponde all'indicazione sul set di caratteri impiegato.

56

Come impostare il parametro degli headers per inviare una mail in formato HTML

Se, ad esempio, si volesse inviare una mail in formato HTML, sarebbe indispensabile impostare il parametro degli headers, per essere sicuri che il linguaggio sia interpretato correttamente in fase di ricezione e di lettura. In questo caso, i parametri saranno indicati dai seguenti script: $header = "MIME-Version: 1.0rn";$header .= "Content-type: text/html; charset=iso-8859-1rn";?>. Per impostare le indicazioni riferite al mittente della mail e l'indirizzo a cui inviare le risposte, lo script sarà il seguente: $header = 'From: "sito. It" rn';$header .= "Reply-To: rispondi@email. It rn";?>.

66

Porre attenzione alle stringhe in entrata dello script e non impostare il destinatario di mail tramite il form

Alcuni piccoli consigli finali riguardano le raccomandazioni circa l'impostazione del destinatario delle email attraverso il form, che è da evitare, dal momento che gli utenti potrebbero inviare spam al sito. Inoltre è fondamentale prestare molta attenzione alle stringhe in entrata dello script, che devono essere filtrate in maniera adeguata, per riuscire ad evitare che altri utenti possano aggiungere ulteriori stringhe all'interno della mail.

Potrebbe interessarti anche

Segnala contenuti non appropriati

Tipo di contenuto
Devi scegliere almeno una delle opzioni
Descrivi il problema
Devi inserire una descrizione del problema
Si è verificato un errore nel sistema. Riprova più tardi.
Verifica la tua identità
Devi verificare la tua identità
chiudi
Grazie per averci aiutato a migliorare la qualità dei nostri contenuti

Guide simili

Programmazione

Come iniziare a programmare in PHP

Il cosiddetto "php" (o "Hypertext Preprocessor") è un linguaggio di programmazione che ci serve per realizzare siti web mediante l'inserimento di una serie di stringhe di comando. Per i neofiti, questo tipo di linguaggio può apparire piuttosto complesso....
Programmazione

Come effettuare un redirect in PHP

Il tutorial di oggi è dedicato alla creazione di un file *. Php da caricare sul vostro server che avrà il compito di reindirizzare un vostro visitatore verso un link prestabilito e deciso da voi. Nel codice che vi mostrerò, ci sarà la possibilità...
Programmazione

Appunti di php

Il PHP è un linguaggio di programmazione come lo sono per esempio anche HTML e JAVA. Così come gli esempi, esso viene utilizzato per la scrittura delle pagine web, il suo acronimo sta per Hypertext Preprocessor. Molte volte il linguaggio PHP viene anche...
Programmazione

Come generare dei codici captcha con PHP

Il PHP è un linguaggio di programmazione, utilizzato prevalentemente per i siti web interattivi e per la creazione di maschere per la registrazione dei dati. Molto flessibile e performante, permette a tutti i tipi di utenti di realizzare il proprio sito...
Programmazione

Come gestire il filesystem in PHP

Nell’ambito dell’informatica si possono trovare o imbattersi in diversi tipi di linguaggi di programmazione. Alcuni di essi sono pensati appositamente per avere la capacità di gestire file. Sicuramente uno dei più utilizzati per svariati motivi...
Programmazione

Php: interazione con i database

Quando si parla di PHP (che è l'acronimo inglese di Hypertext Preprocessor) si intende quel linguaggio della programmazione inteso per la creazione di pagine internet dinamiche oppure delle applicazioni web lato server. Tuttavia, le sue funzioni non...
Programmazione

Come gestire file system con il PHP

In informatica esistono vari linguaggi di programmazioni. Utili ed essenziale per gestire file. Tra i più usati abbiamo il Linguaggio PHP. Si tratta di un linguaggio web, Il seguente permette di interagire con i files presenti sul PC. Trattandosi di...
Programmazione

Come ciclare un array in PHP

Quando si parla di programmazione, si identifica negli array quelle strutture complesse, statiche ed omogenee che contengono una serie di dati. Utilizzando PHP, non abbiamo bisogno di esplicitare il tipo di array. Al momento della definizione, infatti,...
I presenti contributi sono stati redatti dagli autori ivi menzionati a solo scopo informativo tramite l’utilizzo della piattaforma www.o2o.it e possono essere modificati dagli stessi in qualsiasi momento. Il sito web, www.o2o.it e Arnoldo Mondadori Editore S.p.A. (già Banzai Media S.r.l. fusa per incorporazione in Arnoldo Mondadori Editore S.p.A.), non garantiscono la veridicità, correttezza e completezza di tali contributi e, pertanto, non si assumono alcuna responsabilità in merito all’utilizzo delle informazioni ivi riportate. Per maggiori informazioni leggi il “Disclaimer »”.