GNU/Linux >> Linux Esercitazione >  >> Panels >> Panels

Funzione PHP Mail disabilitata su hosting Web condiviso

In precedenza avevamo deciso di disabilitare la funzione mail perché la funzione mail() veniva spesso utilizzata da utenti malintenzionati sulla nostra rete per inviare spam e altre e-mail non richieste. Consigliamo ai nostri clienti di utilizzare una libreria e-mail per inviare e-mail e ce ne sono molte tra cui scegliere.

CodeIgniter Framework.

Se utilizzi il framework CodeIgniter, puoi utilizzare la classe Email integrata per inviare e-mail. Ecco un codice di esempio che utilizza la classe Email di CodeIgniter:

$this->load->library('email');
$this->email->from('[email protected]', 'eUKhost Limited (No Reply)');
$this ->e-mail->a($e-mail); // $email =“email_id”
$this->email->subject('Welcome to eUKhost Limited.');
$this->email->message('



Messaggio qui



');
$this->email->invia();

Puoi anche caricare automaticamente la classe Email all'interno del file config/autoload.php, il che significa che non è necessario utilizzare la prima riga di codice per creare un'istanza della classe Email prima di utilizzarla.
Per ulteriori informazioni sulla classe Email in CodeIgniter, vedere la documentazione.

Libreria PERA.

La libreria PEAR dispone anche di una classe Mail incorporata per l'invio di e-mail, comprese le e-mail tramite autenticazione SMTP con un account e-mail già esistente. Ecco un esempio:

include('Mail.php'); // include la classe PEAR Mail
$headers =array ('From' => $from, 'To' => $to, 'Subject' => $subject); // le intestazioni delle email
$smtp =Mail::factory('smtp', array ('host' => “localhost”, 'auth' => true, 'username' => $username, 'password' => $password, 'porta' => '587')); // Protocollo SMTP con nome utente e password di un account e-mail esistente nel tuo account di hosting
$mail =$smtp->send($to, $headers, $body); // invio dell'e-mail

Per ulteriori informazioni, vedere la pagina della classe Mail sul sito Web di PEAR.
Nota:il codice sopra non rileva alcun errore, quindi ti consigliamo di controllare la documentazione per esempi più elaborati.

Per trovare la porta SMTP, vai su "Configura client e-mail" nel menu "Altro" in "Account e-mail" di cPanel. Potrebbe essere la porta 587, ma controlla per sicurezza.

Libreria di SwiftMailer.

La libreria SwiftMailer è un'altra scelta popolare per l'invio di e-mail. Ecco un esempio:
$transport =Swift_SmtpTransport::newInstance('mail.example.com', 587); // l'indirizzo e la porta del tuo server di posta. Se non sai qual è il tuo, vai su cPanel -> Impostazioni e-mail e per l'account e-mail specifico, Altro -> Configura client di posta elettronica:verrà visualizzato lì.

$mailer =Swift_Mailer::newInstance($trasporto); // crea una nuova istanza di un trasporto SMTP in modo specifico

$transport->setUsername('[email protected]');
$transport->setPassword('your_password_here');

$messaggio =Swift_Message::newInstance();

$message->setSubject('Imposta l'oggetto dell'e-mail');
$message->setFrom(array('[email protected]' => 'Il tuo nome/nome dell'azienda'));
$messaggio->setTo(array($email));

$message->addPart('

Se vuoi HTML nella tua e-mail usa addPart()

', 'text/html');

$risultato =$mailer->invia($messaggio); // restituisce FALSE booleano in caso di errore

if(!$result)
{
echo 'failure';
}
else
{
echo 'success';
}

Alcuni membri del nostro staff hanno esperienza con PHP, quindi se hai bisogno di assistenza con il tuo codice PHP per inviare e-mail utilizzando una di queste librerie o una libreria diversa che potresti voler utilizzare, sei il benvenuto a pubblicare la tua richiesta sul nostro Forum di Web Hosting in cui un membro dello staff o un cliente del forum sarà lieto di assisterti.


Panels
  1. Semplice test di posta PHP

  2. Domande frequenti sulla migrazione dell'hosting web

  3. Sicurezza dell'account di hosting Web condiviso/aziendale

  4. Che cos'è l'hosting condiviso come servizio di hosting Web?

  5. Imposta un inoltro di posta

Come controllare i rapporti di consegna della posta in WHM?

Come utilizzare lo strumento per la risoluzione dei problemi di posta in WHM?

Come aumentare la quota della mia casella di posta?

Abilita la registrazione degli errori PHP sul Web e sull'hosting dei rivenditori

Perché non riesco a ricevere e-mail?

Sicurezza dell'hosting web