Cara Kirim Email dengan PHP – Niagahoster Blog

Dalam tutorial kali ini kami akan membahas cara kirim email dengan PHP dan mengetes function PHP mail(). Function PHP mail() dapat digunakan untuk mengirimkan email menggunakan PHP. Ini cukup mudah jika Anda ingin menambahkan contact form pada website. Dengan PHP mail(), email dapat terkirim dengan hanya menggunakan script PHP sederhana.

[ecko_alert color=”gray”]Baca juga: Cara Konfigurasi Email dengan Domain Sendiri di Gmail[/ecko_alert]

Apa yang Anda Butuhkan?

Sebelum memulai langkah pada tutorial ini, pastikan bahwa:

  • Memiliki akses ke akun hosting Anda
  • Function PHP mail() aktif

Langkah 1: Membuat File PHP Baru

Pertama-tama, silakan untuk membuat file PHP pada akun hosting Anda. Untuk file PHP, nantinya harus dapat diakses melalui nama domain Anda, oleh karena itu, silakan untuk meletakknya pada folder public_html. Untuk membuat file PHP dapat melalui File Manager atau FTP client. Silakan buat file PHP baru dengan nama testmail.php.

kirim email dengan php

Langkah 2: Edit File PHP

1. Setelah file PHP dibuat, silakan masukkan kode di bawah ini ke dalam file testmail.php. Klik kanan pada file testmail.php kemudian pilih Code Edit.

cara kirim email dengan php

<?php
    ini_set( 'display_errors', 1 );   
    error_reporting( E_ALL );    
    $from = "testing@domainanda.com";    
    $to = "alamatpenerima@domain.com";    
    $subject = "Checking PHP mail";    
    $message = "PHP mail berjalan dengan baik";   
    $headers = "From:" . $from;    
    mail($to,$subject,$message, $headers);    
    echo "Pesan email sudah terkirim.";
?>

2. Copy kode di atas kemudian paste ke dalam file testmail.php. Simpan dengan klik tombol Save Changes. Alamat email pada baris $form dan $to silakan ganti dengan alamat email Anda.

kirim email

  • Dua baris pertama pada baris code berfungsi untuk mengaktifkan pemberitahuan error ketika ada script yang error.
  • $from – Alamat email pengirim. Kebanyakan penyedia hosting tidak mengijinkan untuk menggunakan alamat email yang tidak sesuai dengan domain Anda. Jadi Anda perlu untuk menggunakan alamat email sesuai nama domain Anda. Hal ini supaya email terkirim dengan baik.
  • $to – Alamat email penerima. Karena ini hanya untuk pengetesan saja, silakan gunakan alamat email Anda yang aktif contohnya Gmail.
  • $subject – Subject dari email.
  • $message – Konten dari pesan email.
  • $headers – Semua email memiliki header, yang berisi informasi penting seperti alamat email pengirim.
  • mail($to, $subject, $message, $headers) – Ini adalah fungsi PHP untuk mengeksekusi email. Anda  tidak perlu melakukan perubahan apapun.
  • Echo “Pesan email sudah terkirim.” – Fungsi PHP echo akan menampilkan pesan ketika script telah berhasil dieksekusi.

Langkah 3: Jalankan Script Kirim Email dengan PHP

Jika Anda sudah meletakkan script PHP pada direktori public_html seperti yang kami sarankan, Anda dapat menjalankan script PHP mail dengan mengakses file tersebut melalui browser namadomainanda.com/tesmail.php.

kirim email dengan php terkirim

Jika Anda melihat notifikasi Pesan email sudah terkirim pada browser, itu artinya email telah berhasil terkirim dan Anda dapat mengeceknya pada inbox email tujuan. Karena tidak semua email masuk ke dalam folder utama, jangan lupa cek juga folder SPAM/JUNK. Berikut tampilannya jika email berhasil terkirim.

kirim email php

Jika terdapat error, silakan untuk mengecek kembali dengan memastikan semua detail sudah benar. Jika error tidak tampil di browser, Anda dapat mengeceknya pada file error_log dari akun hosting Anda. Jika Anda belum mengetahui bagaimana cara mengecek filenya, silakan lihat tutorial berikut ini.

Kesimpulan

Sekarang Anda sudah mempelajari cara kirim email dengan PHP. Meskipun tutorial ini ibarat seperti sebuah percobaan, syntax yang sama dapat Anda gunakan untuk pengembangan formulir kontak website Anda. Jika Anda memerlukan script yang lebih lengkap untuk mengirimkan email menggunakan PHP, silakan cek PHPMailer. Ini telah terintegrasi dukungan SMTP, error_logs dalam 47 bahasa serta banyak fitur berguna lainnya.

Apakah Anda masih memiliki pertanyaan? Tuliskan pertanyaan Anda pada kolom komentar di akhir halaman ini! Kemudian, klik tombol Subscribe untuk terus mendapatkan ulasan terbaru seputar dunia online langsung dari inbox email Anda 🖐

Subscribe Sekarang

Dapatkan beragam artikel tutorial, insight dan tips menarik seputar dunia online langsung melalui email Anda. Subscribe sekarang dan raih kesuksesan bersama kami!

  • Alexandromeo

    Apakah kalau buat file php nya di localhost (offline), tapi saya menghidupkan koneksi internet saya, apakah email bisa terkirim ? Saya sudah coba, tapi tidak terkirim. Apakah karena saya buatnya di localhost ?

    • Waryanto

      Untuk tutorial ini tidak bisa dijalankan melalui localhost, untuk menjalankan php mail melalui localhost perlu melakukan konfigurasi lain seperti pada file php.ini. Di tutorial selanjutnya akan kami bahas… 🙂

  • Imam

    mas mohon bantuannya, saya mau mengirim emai dengan message berformat html.
    udah buat kayak gini:
    error_reporting( E_ALL );
    $from = "info@emailco.id";
    $to = "target@emailco.id";
    $subject = "Info Pendaftaran Member";
    $message= "<h1>haloo kawan…</h1>";
    $headers = "From:".$from;
    $headers .= "Content-type: text/html";
    mail($to,$subject,$message, $headers);
    echo "Pesan email sudah terkirim.";

    Tapi hasilnya malah gk kekirim pesannya, ada cara lain gk mas?
    klo berhasil jg yg kekirim malah seperti ini "<h1>haloo kawan…</h1>", tidak terbaca html nya.
    Terimakasih sebelumnya 🙂

  • bambang

    mau tanya mas,

    folder phpmailernya diletakkan dimana dan di baris keberapa ya dari script berikut yang memanggil fungsi class phpmailernya

    <?php
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL );
    $from = "testing@domainanda.com";
    $to = "alamatpenerima@domain.com";
    $subject = "Checking PHP mail";
    $message = "PHP mail berjalan dengan baik";
    $headers = "From:" . $from;
    mail($to,$subject,$message, $headers);
    echo "Pesan email sudah terkirim.";
    ?>

    • Waryanto

      Silakan disesuaikan dengan website Anda, untuk tutorial ini kami langsung meletakkan file PHP di public_html. Fungsi PHP untuk mengeksekusi email ada pada baris ke 9.

  • zakki

    tampilan sudah sukses terkirim. namun di email tidak ada inbox sama sekali. apa tidak ada konfigurasi lain?

    • Waryanto

      Silakan ditunggu dalam beberapa menit, atau silakan cek folder spam. 🙂

  • Hendro

    Mas, saya sudah sering pake fungsi mail().. dan rata2 selalu masuk spam.
    Adakah cara supaya selalu masuk inbox?
    Soalnya pandangan orang2 kalo email spam itu berbahaya…
    Thanks..

  • rahmat

    cara menambahkan tabel kedalam pesan gimana pak? saya sudah coba coba tapi tidak terjadi perubahan…

  • Muhammad Naim

    Hai pak waryanto, apakah mengirim emaiil dengan HTML dapat dilakukan atau tidak ? apabila dapat dilakukan tolong beritahukan caranya. Terimakasih

    • Waranugraha Yogya

      Tidak bisa pak,
      Karena HTML hanya client side scripting saja jenisnya, sementara pengiriman email membutuhkan pemrosesan oleh server yang hanya dapat diproses oleh server side script semacam PHP & sejenisnya.

  • Nurhamzah

    mas klo mau kirim file pdf ke email bisa ngga???

  • Fata El Islami

    di eksekusi berhasil, tapi email ga masuk padahal tulisan sukses, kenapa ya?

    • Waryanto

      Jika Anda sudah memasukkan alamat email pada kolom "To" dengan benar, email Anda biasanya masuk folder spam, silakan cek folder spam Anda. Pastikan tidak ada masalah pada akun hosting Anda.

  • Eksa Pandawa

    Betapa kudetnya aku, cuma manfaatkan fitur yang sudah ada, ternyata dengan manual seperti ini bisa. Lantas jika blash Email menggunakan PHP tanpa pihak ketiga, artinya akan lebih meringankan server kan pak? atau gimana ya agak kurang paham.

  • Fikri

    Mas saya mau nanya, saya kerja di salah satu perusahaan di batam. Nah, disini ada beberapa alat yang setiap bulan/beberapa bulan harus dikalibrasi atau di cek ulang. Nah, kemudian ketika misalnya alat tersebut sudah expired & perlu dikalibrasi dia langsung mengririm email otomatis ke kami bagian QC.
    Apakah itu juga menggunakan pemrograman php mas?
    Terima kasih

    • Yasin K

      Bisa bapak, dengan melakukan expired date kemudian menjalankan script untuk mengirimkan email.

  • Sarah Azhura

    Untuk mengirim file seperti PDF, RAR itu bagaimana mas apakah bisa jga?

    • Yasin K

      Bisa dengan fungsi attachment pada php dengan menggunakan basefile

  • Imam

    Mas sebelumnya saya sudah cukup lama pakai cara ini, cuma kok tiba2 jadi gk bisa sama sekali buat ngirim email dengan cara ini. masalah nya apa ya mas?, mohon bantuanya.
    Terimakasih

    • Yasin K

      Masalah bisa bermacam-macam, apakah sudah dilakukan pengecekan pada log error-nya?

9 + seven =