Cara menggunakan phpmailer idwebhost

Tapi perlu dicatat bahwa konsep dan praktik ini tidak bisa digunakan untuk semua hosting, apalagi menggunakan hosting gratis, meskipun tidak semua hosting gratis memangkas fitur web mail. Selalu gunakan hosting berbayar yang memiliki fasilitas lengkap. Dan jika ada masalah di konfigurasi SMTP, jangan sungkan untuk menanyakan langsung ke penyedia hosting. Malu bertanya sesat di kamar !

Saya menerima beberapa pertanyaan dari sobat yang sudah mencoba tutorial menghubungkan form ke email dengan PHPmailer, Beberapa diantaranya bertanya mengapa mereka tidak menerima email, walaupun sudah mengikuti petunjuk dalam video tutorial.

Berikut ini beberapa hal yang mungkin menyebabkan gagalnya form mengirimkan isian ke email:

1. Hosting yang dipakai tidak support untuk mengirimkan email melalui PHP

Beberapa hosting khususnya hosting gratis tidak mengijinkan atau mendisable pengiriman email melalui form PHP, jadi script form yang menggunakan PHPmailer tidak dapat berfungsi. Hal ini mungkin berkaitan dengan pencegahan penggunaan free hosting tersebut untuk aktivitas pengiriman email spam. Namun, biasanya mereka menawarkan feature send email melalui PHP pada paket hosting berbayar mereka. Nah,jadi pastikan dulu hosting yang dipakai apakah bisa mengirimkan email melalui PHP dengan menghubungi support hosting yang Anda Pakai.

Jika Anda kebetulan belum mempunyai hosting, dan belum memilih hosting yang akan anda gunakan untuk menghost domain dan mengirimkan email, Anda bisa ambil trial hosting untuk memastikan apakah email di tempat hosting bisa digunakan dan berfungsi dengan baik. Jika hosting yang akan anda pakai ternyata tidak menawarkan trial, maka carilah web hosting yang menawarkan money back guarantee jika Anda tidak puas. Jadi jika ternyata email yang digunakan tidak bisa digunakan dengan PHPmailer, atau ternyata setelah emailnya dipakai menggunakan PHPmailer bisa, namun masuk ke folder spam email penerima, Anda bisa pindah hosting dengan tidak mengalami kerugian. Dan alternatif lain carilah hosting yang menawarkan paket bulanan termurah,sehingga Anda bisa mengujinya dan bisa beralih hoting ke tempat lain dengan tanpa mengalami banyak kerugian.

Beberapa hosting yang saya rekomendasi dan sudah teruji berhasil untuk digunakan emailnya menggunakan PHPmailer adalah:

Daiserver
Domainesia.

Idwebhost

Hawkhost
Interserver

2. Salah Setting Email untuk PHPmailer

Penyebab lain gagalnya terkirimnya email saat menggunakan PHPmailer adalah salah setting. Perhatikan baik baik setting email yang digunakan untuk mengirimkan isian form.

Pastikan username dan password email yang digunakan benar, Anda bisa mencobanya dengan login ke webmail website Anda, jika berhasil login dan berhasil mengirimkan email melalui webmail yang tersedia (misalnya melalui Horde atau Roundcube),maka email dan passwordnya sudah benar.

Pastikan host yang digunakan benar, biasanya adalah mail.domain.tld seperti mail.domain.com dan sebagainya, pastikan juga portnya sudah benar biasanya 587.

Pastikan SMTPSecure juga benar, biasanya adalah tls. Untuk melihat port,host, dan SMTPSecure ,silahkan lihat di data settingan email untuk device.

Jika Anda yakin sudah benar semua, namun belum juga emailnya terkirim keinbox, silahkan ganti IsSMTP(true) menjadi IsMAIL(true),

Anda bisa mengganti alternatif port( 587 dengan port yang lainya) biasanya ada alternatif port yang disediakan oleh hosting email yang Anda gunakan.

 

Dan Jika Anda menyerah karena sudah mencoba berkali-kali mensetting form menggunakan PHPmailer,namun isian form tetap tidak bisa terkirim ke email tujuan, Anda bisa menghubungi saya untuk mensettingkannya untuk Anda. Dengan membayar biaya jasa Rp 50.000, Isian Form Anda akan sampai ke email tujuan. Apabila sekalian membuat formnya juga, ada tambahan biaya, silahkan hubungi saya melalui whatsapp.

Email sudah menjadi bagian penting dari aktivitas sehari-hari, pekerjaan, bahkan bisnis. Surat-menyurat elektronik ini dilakukan di sejumlah platform, termasuk Hostinger, Zoho Mail, dan G Suite. Namun, tahukah Anda kalau Anda juga bisa kirim email dengan PHP?

Di tutorial ini, kami akan membahas dua cara mengirim email, yaitu dengan fungsi PHP mail() bawaan dan PHPMailer menggunakan Simple Mail Transfer Protocol (SMTP).

Cara menggunakan phpmailer idwebhost

 

Bangun kredibilitas bisnis Anda dengan email bisnis profesional. Dapatkan Email Hosting

Cara Kirim Email dengan PHP mail()

Fungsi PHP mail() ditujukan untuk invoke program Sendmail. Program ini biasanya dikonfigurasi oleh administrator sistem sehingga Anda dapat mengirim email.

Agar fungsi ini dapat digunakan, Anda harus memastikan kalau provider hosting Anda memperbolehkan pengaturan layanan Sendmail secara manual.

Apabila saat ini Anda menggunakan layanan Hostinger, Anda bisa mengaktifkan atau menonaktifkan fungsi ini melalui hPanel. Klik Emails > Mail Service Control.

Cara menggunakan phpmailer idwebhost

Secara default, layanan Sendmail telah diaktifkan. Meskipun demikian, tidak ada salahnya jika Anda mengeceknya sekali lagi.

Cara menggunakan phpmailer idwebhost

Membuat File Tes untuk PHP Mail

Pertama-tama, buat file untuk script PHP mail, lalu simpan di direktori public_html agar dapat diakses dengan mudah menggunakan nama domain.

  1. Klik File Manager dan Anda akan diarahkan ke halaman khusus untuk pengaturan file.
  2. Buat file baru dengan meng-klik ikon tambah file baru di kanan atas layar. Untuk tutorial ini, kami akan menamai file baru tersebut dengan testmail.php. Setelah itu, klik Create.

Cara menggunakan phpmailer idwebhost

  1. Klik dua kali pada folder testmail.php dan tambahkan komponen. Pada tangkapan layar di bawah ini, Anda bisa lihat contoh komponen dasar dari fungsi PHP mail() yang akan kami gunakan di tutorial ini. Kami akan menjelaskan lebih lengkap di bagian berikutnya. Klik Save & Close jika sudah selesai mengedit file baru.

Cara menggunakan phpmailer idwebhost

  1. Kini Anda sudah bisa mengirim email melalui NamaDomainAnda/testmail.php di browser. Ganti NamaDomainAnda dengan domain yang Anda gunakan pada saat membuat testmail.php.
  2. Email yang dituju akan menerima pesan yang Anda kirimkan.

Cara menggunakan phpmailer idwebhost

Mengenal Komponen PHP Mail

Seperti yang sudah disebutkan sebelumnya, di bagian ini kami akan membahas komponen dari script dasar PHP mail. Untuk tutorial ini, komponen yang akan kami berikan adalah sintaks dasar email. Tujuannya adalah agar Anda bisa lebih memahami fungsi yang dibahas dalam tutorial ini.

Apabila Anda menginginkan informasi yang lebih mendalam tentang fungsi Sendmail beserta komponennya, silakan kunjungi halaman resmi PHP.

Berikut sintaks PHP yang kami gunakan sebelumnya (pada tangkapan layar di atas):

<?php
ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
$from = "[email protected]";
$to = "[email protected]";
$subject = "Checking PHP mail";
$message = "PHP mail works just fine";
$headers = "From:" . $from;
mail($to,$subject,$message, $headers);
echo "The email message was sent.";
?>

Kami akan menjelaskan komponen di atas satu per satu:

Dua baris pertama ini akan menampilkan notifikasi error apabila terjadi kesalahan. Dengan diaktifkannya notifikasi, Anda akan tahu kalau ada kegagalan dalam menjalankan script.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );

Baris ini memuat alamat email pengirim. Perlu Anda ketahui, sebagian besar penyedia hosting tidak memperbolehkan penambahan alamat email yang tidak jelas atau tidak dikenali karena memungkinkan terjadinya spoofing. Oleh karena itu, gunakanlah alamat email yang memang ditujukan untuk nama domain atau brand agar fungsi PHP mail dapat dijalankan.

$from = "[email protected]";

Masukkan alamat email penerima di baris ini.

$to = "[email protected]";

Masukkan subjek email pesan di sini.

$subject = "Checking PHP mail";

Tulis isi pesan di sini.

$message = "PHP mail works just fine";

Tambahkan informasi penting di sini, misalnya alamat pengirim, alamat untuk header Reply-To, dll.

$headers = "From:" . $from;

Baris ini untuk menjalankan fungsi PHP mail.

mail ($to,$subject,$message,$headers);

Isi pesan yang akan muncul setelah script berhasil dijalankan.

echo "The email message was sent.";

Cara Kirim Email dengan PHPMailer

PHPMailer adalah library kirim email dengan PHP yang banyak digunakan. Dengan library ini, Anda bisa mengirim email menggunakan fungsi mail() atau Simple Mail Transfer Protocol (SMTP). Proses pembuatan PHP mail yang tadinya rumit akan disederhanakan oleh PHPMailer dengan menyediakan satu set fungsi untuk membuat dan mengirimkan email.

Jika Anda sudah punya Composer, menginstall PHPMailer akan jadi lebih mudah. Di Hostinger, Composer merupakan tool bawaan yang dapat Anda temukan di semua jenis paket hosting.

Apabila Anda ingin menginstall PHPMailer dengan metode manual, buatlah koneksi ke akun hosting Anda via SSH terminal terlebih dulu. Berikut langkah-langkahnya:

  1. Unduh dan install PuTTY SSH client.
  2. Buka dashboard hPanel, cari dan klik SSH Access di bagian Advanced.
  3. Catat Informasi Akses SSH yang Anda temukan di sana. Nantinya Anda membutuhkan SSH IP address, SSH port, SSH username, dan SSH password.
  4. Buka PuTTY, lalu atur SSHP IP dan SSH port.

Cara menggunakan phpmailer idwebhost

  1. Klik Open dan jendela perintah (command) akan muncul. Masukkan SSH username dan SSH password. Tekan Enter jika sudah selesai.

CATATAN: PuTTY TIDAK akan menampilkan password Anda. Jadi, Anda tidak perlu panik jika password tidak muncul di layar.

  1. Jalankan perintah ini:
cd public_html
  1. Tekan Enter dan jalankan perintah ini:
ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
0
  1. Tunggu sampai proses install selesai.

Cara menggunakan phpmailer idwebhost

Menggunakan PHPMailer dengan Hostinger SMTP

Setelah PHPMailer berhasil diaktifkan, Anda bisa langsung menggunakannya untuk mengirimkan PHP mail dengan Hostinger SMTP.

  1. Masuk ke hPanel untuk buat akun email. Buka Email Accounts -> Create a New Email Account. Tambahkan alamat email baru dan buat password. Setelah itu, klik Create.

Cara menggunakan phpmailer idwebhost

  1. Cek informasi SMTP di halaman yang sama:

Cara menggunakan phpmailer idwebhost

CATATAN: Jangan sampai Anda lupa akun username, password akun, SMTP host, dan SMTP port. Informasi ini dibutuhkan untuk mengirimkan email via PHPMailer.

  1. Buat file testphpmailer.php di Public_html. Caranya, masuk ke dashboard hPanel dan klik File Manager.
  2. Klik ikon tambah file baru. Namai file tersebut dengan testphpmailer.php, lalu klik Create.
  3. Klik dua kali pada file testphpmailer.php. Setelah itu, salin dan letakkan perintah di bawah ini ke file tersebut:
ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
1
  1. Ubah kode. Misalnya, ganti EMAIL_ACCOUNT_PASSWORD dengan password email Anda, ganti [email protected] dengan username Anda, ganti [email protected] dengan alamat email si penerima, dll. Jika semua sudah diubah, klik Save & Close.
  2. PHPMailer sudah bisa digunakan. Ketik NamaDomainAnda.com/testphpmailer.php di browser dan jalankan script tersebut.

Mengenal Komponen PHPMailer

Untuk memahami cara kerja PHPMailer, kami akan membahas contoh script di atas yang menggunakan SMTP untuk mengirim email. Berikut penjelasan singkat untuk setiap komponennya:

Baris ini mengimpor class PHPMailer ke global namespace.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
2

Baris ini menyertakan berbagai library yang dibutuhkan PHPMailer.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
3

Semua variabel yang serupa memuat informasi penting, seperti info server, header pesan, attachment (lampiran), dan masih banyak lagi. Singkatnya, variabel ini memastikan bahwa pengirim pesan dilindungi dengan autentikasi SMTP.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
4

Menentukan kondisi ketika script dijalankan.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
5

Baris ini akan menampilkan pesan error dengan tambahan informasi waktu terjadinya kegagalan pengiriman pada script.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
6

Menentukan kondisi etika script dijalankan.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
7

Pesan ini akan muncul jika email berhasil dikirimkan.

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
8

PRO TIP: Baris SMTPDebug = 2 hanya digunakan ketika Anda ingin mengetes script dan mengecek cara kerjanya. Jika tes sudah selesai dilakukan, ubah nilainya ke SMTPDebug = 0. Tindakan ini diharuskan agar end-user tidak melihat laporan pengiriman SMTP.

Jika dilihat dengan saksama, Anda akan tahu kalau kami melakukan sesuatu yang berbeda dari contoh pertama yang ditampilkan. Alih-alih mengirimkan teks biasa, kami mengirimkan pesan HTML.

Oleh karena itu, pesan Anda akan memuat isi dari file message.html yang berada di direktori yang sama, yaitu public_html.

Format ini memiliki fungsionalitas yang lebih luas dibandingkan dengan pesan biasa, apalagi HTML juga mudah dikutomisasikan. Anda bisa mengganti warna, gaya, gambar, dan bahkan menambahkan file multimedia yang koleksinya terbatas di pesan email biasa.

Formulir Kontak PHPMailer

Tahukah Anda kalau Anda bisa melakukan lebih dari sekadar mengirim email biasa dengan PHPMailer? Salah satu contohnya adalah membuat formulir kontak. Anda bisa membuat formulir ini dengan PHPMailer untuk menjangkau audiens di mana pun mereka berada.

Berikut contoh script-nya:

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
9

Sama seperti yang sudah-sudah, Anda pun harus membuat file baru terlebih dulu di folder public_html. Untuk contoh formulir kontak, file baru ini akan kami namai dengan formscript.php. Ubah informasi yang ada di dalam script. Setelah itu, jalankan script melalui browser.

Berikut hasilnya:

Cara menggunakan phpmailer idwebhost

Setelah audiens menulis dan mengirimkan pesan, mereka akan menerima pesan konfirmasi. Konten pesan akan masuk ke kotak masuk dari email yang Anda tambahkan di sini:

$from = "[email protected]";
0

PRO TIP: Seandainya formulir kontak PHPMailer tidak berfungsi, tambahkan baris $mail->SMTPDebug = 2; untuk mengecek penyebab error. Jika sudah selesai, hapus atau ganti nilai 2 ke 0

PHPMailer menawarkan lebih banyak contoh yang bisa Anda coba di repositori resmi GitHub. Jika Anda menggunakan WordPress, Anda bisa membuat formulir kontak dengan menginstall plugin, seperti WP Forms, Formidable, Forms, atau Gravity Forms.

Cara menggunakan phpmailer idwebhost

Mengatasi Error yang Sering Terjadi di PHP Mail dan PHPMailer

Error bisa saja terjadi ketika Anda kirim email dengan PHP mail atau PHPMailer. Berikut beberapa kendala atau error yang sering terjadi beserta tips untuk mengatasinya.

Sender Address Rejected: Not Owned by the User

Error ini menandakan bahwa server tidak bisa melakukan autentikasi menggunakan informasi yang tersedia.

Untuk mengatasinya, cek kembali alamat email yang Anda gunakan untuk mengirim pesan. Pastikan alamat email tersebut aktif dan sesuai dengan kontak email yang ada. Apabila tidak sesuai, segera ubah dan ganti dengan alamat yang benar. Pastikan juga Anda sudah mengaktifkan SPF record.

Gmail Tidak Dapat Memverifikasi Bahwa NamaDomainAnda.com yang Mengirimkan Pesan Ini

Ketika Anda sedang mengetes script PHP mail dan peringatan ini muncul, penyebabnya bisa jadi salah satu di bawah ini:

  • SPF record belum diaktifkan.
  • Email dikirimkan dari alamat yang tidak ada atau bukan alamat Anda. Pastikan untuk memakai informasi autentikasi SMTP yang valid.

Pesan Masuk ke Folder Spam

Ada banyak hal yang mengakibatkan PHP mail dianggap sebagai spam, di antaranya adalah:

  • Subjek yang tidak jelas atau diduga sebagai spam. Contohnya seperti “test”, atau “testing”, “hello”, “urgent”, atau sejenisnya. Buatlah subjek pesan sejelas-jelasnya.
  • Anda memasukkan alamat pengirim yang salah. Sistem keamanan akan aktif dan email Anda disaring sebagai tindakan pencegahan terhadap email spoofing dan scam.
  • Anda menggunakan kata-kata yang memicu spam. Kata atau frasa yang dikategorikan sebagai spam, seperti “great offer” (penawaran terbaik), “click here” (klik di sini), “special promotion” (promo spesial), “this is not spam” (bukan spam), dan lain sebagainya. Disarankan untuk mengubah isi pesan jika ada kata-kata yang dapat mengakibatkan email Anda terdeteksi sebagai spam.
  • Anda tidak melengkapi mailing list dengan tombol unsubscribe (berhenti berlangganan). Karena tidak adanya tombol ini, audiens akan melaporkan pesan email Anda sebagai spam. Oleh karena itu, sangat penting bagi Anda untuk selalu menambahkan tombol unsubscribe. Keberadaan tombol ini juga meningkatkan kadar kepercayaan audiens terhadap Anda.

Kesimpulan

Sekarang Anda sudah tahu cara kirim email dengan PHP dan cara menggunakan PHPMailer untuk mengirimkan email dengan autentikasi SMTP. Meskipun tutorial ini hanya memberikan sintaks dan komponen dasar, sintaks yang sama dapat Anda gunakan untuk membuat formulir kontak atau ekstensi lainnya di website.

Untuk informasi selengkapnya, silakan cek halaman PHPMailer project. Jika Anda punya tips atau ide yang ingin dibagikan, jangan ragu untuk menuliskannya pada kolom komentar di bawah ini!

Penulis

Ariata C.

Ariata suka sekali menulis dan menerjemahkan, dan sekarang ini bekerja sebagai translator di Hostinger Indonesia. Lewat artikel dan tutorial yang diterbitkan di blog Hostinger, Ariata ingin membagikan pengetahuan tentang website, WordPress, dan hal terkait hosting lainnya kepada para pembaca.