Mailtrap: un falso server SMTP per i test di posta elettronica pre-produzione
Le email sono una parte importante di qualsiasi sito web. In passato inviavamo e-mail sulla registrazione degli utenti, newsletter, nuove offerte, coupon, ecc. Prima che queste e-mail inizino a essere inviate agli utenti reali, dovremmo eseguire dei test delle e-mail nella fase di sviluppo. In questo articolo, studiamo come eseguire il test sandbox per le tue e-mail.
Mailtrap è un falso server di test SMTP utile per i test di posta elettronica di pre-produzione. Usando Mailtrap, otterrai la tua casella di posta in cui puoi controllare che le tue e-mail vengano visualizzate correttamente o meno.
Mailtrap consente gratuitamente 500 e-mail al mese nella tua casella di posta. Per una piccola applicazione sono sufficienti 500 email con un piano gratuito. Controlla la loro pagina dei prezzi se hai bisogno di una quota aggiuntiva.
Ottieni credenziali SMTP Mailtrap
Prima di scrivere il codice effettivo per le email, devi prima registrarti su Mailtrap e ottenere le credenziali. Sebbene Mailtrap fornisca un piano a pagamento, gli utenti non devono inserire i dettagli della carta di credito per la registrazione.
Al momento della registrazione, prendi le credenziali del tuo server SMTP. Puoi modificare queste credenziali in qualsiasi momento. Fare riferimento allo screenshot qui sotto.
Ora testiamo un’e-mail utilizzando PHPMailer e il server SMTP Mailtrap.
Integrazione di Mailtrap per il test della posta elettronica
Per i test delle e-mail con Mailtrap, invieremo un’e-mail fittizia. Quando si utilizza il server SMTP di Mailtrap, l’e-mail non verrà inviata alla casella di posta dell’utente reale. Verrà invece inviato alla tua casella di posta Mailtrap.
Usiamo la libreria PHPMailer per inviare un’e-mail. Dovresti avere Composer installato sul tuo sistema per installare la libreria. Apri il terminale nella directory principale del tuo progetto ed esegui il comando seguente:
composer require phpmailer/phpmailer
Nel codice sottostante, sostituisci i segnaposto con le tue credenziali del server SMTP di Mailtrap. Inoltre, imposta le e-mail secondo le tue esigenze. Per ora, sto usando le mie e-mail.
<?php
//Import PHPMailer classes into the global namespace
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;
require_once 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
$mail->isSMTP();
$mail->Host = 'smtp.mailtrap.io'; //mailtrap SMTP server
$mail->SMTPAuth = true;
$mail->Username = 'YOUR_USERNAME'; //username
$mail->Password = 'YOUR_PASSWORD'; //password
$mail->Port = 465; //smtp port
$mail->setFrom('[email protected]', 'Artisans Web');
$mail->addAddress('[email protected]', 'Sajid');
$mail->isHTML(true);
$mail->Subject = 'Mailtrap Email';
$mail->Body = 'Hello User, <p>This is a test mail sent through Mailtrap SMTP</p><br>Thanks';
if (!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: '. $mail->ErrorInfo;
} else {
echo 'Message has been sent';
}
} catch (Exception $e) {
echo 'Message could not be sent.';
echo 'Mailer Error: '. $mail->ErrorInfo;
}
Dopo aver eseguito il codice sopra, la tua email dovrebbe essere inviata alla tua casella di posta Mailtrap come segue:
Nella scheda Analisi spam, puoi controllare il punteggio spam e la lista nera del tuo messaggio e del tuo server. La scheda "Verifica HTML" elencherà la convalida HTML rispetto alla tua email.
Consiglio anche di consultare l’articolo Come inviare e-mail in PHP scritto sul blog Mailtrap.
articoli Correlati
- Invia e-mail utilizzando il server SMTP di Gmail da script PHP
- Invio di e-mail tramite il server SMTP di Gmail in Laravel
- Come inviare e-mail utilizzando il server SMTP di Gmail e la libreria Swift Mailer