Cara Mengirim Email Dengan Script PHP di Localhost Via XAMPP
October 20th, 2011 | by rosihanari |
Cetak Artikel
Barangkali Anda pernah heran, mengapa script PHP untuk mengirim email yang Anda buat tidak bisa berjalan di localhost? Sedangkan apabila script tersebut diupload di web hosting, maka script tersebut bisa berjalan dengan baik alias bisa berfungsi untuk mengirim email. Nah.. dalam artikel kali ini, akan saya paparkan cara mengirim email dengan script PHP yang dijalankan melalui localhost menggunakan XAMPP.
Di dalam PHP, terdapat sebuah function yang digunakan untuk mengirim email yaitu mail(); Supaya function tersebut bisa berjalan dengan baik, Anda membutuhkan sebuah module lain di luar PHP yang bertugas untuk mengirim pesan melalui email. Dengan kata lain, penggunaan perintah mail() ini tidak bisa berdiri sendiri hanya di PHP melainkan butuh module lain untuk melakukan tugas pengiriman email. Module yang bisa digunakan adalah untuk pengiriman email ini adalah ‘Sendmail’. Module ‘Sendmail’ ini sudah ada di software-software paket web development seperti XAMPP atau WAMP. Anda bisa cek module ini melalui direktori C:\XAMPP\SENDMAIL. Untuk di WAMP, silakan dicari sendiri ya…
Nah.. selanjutnya akan saya paparkan bagaimana cara memanfaatkan module ‘Sendmail’ tersebut untuk proses pengiriman email melalui script PHP yang dijalankan melalui localhost.
Langkah pertama, kita harus memodifikasi file php.ini terlebih dahulu untuk mengaktifkan module ‘Sendmail’. Silakan buka file php.ini yang terletak di C:\XAMPP\PHP, kemudian cari baris berikut ini
[mail function] ; For Win32 only. ; http://php.net/smtp ; SMTP = localhost ; http://php.net/smtp-port ; smtp_port = 25 ; For Win32 only. ; http://php.net/sendmail-from ; sendmail_from = postmaster@localhost ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ; http://php.net/sendmail-path sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
Pastikan untuk baris
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
tidak ada tanda semicolon (;) di depannya, sedangkan untuk baris yang lain, tambahkan semicolon di depannya seperti tampilan di atas. Setelah file php.ini selesai diedit, simpan kembali dan kemudian lakukan restart Apache.
Selanjutnya, kita memodifikasi file konfigurasi dari module ‘Sendmail’ ini yaitu ‘sendmail.ini’. File ini terletak di dalam direktori C:\XAMPP\SENDMAIL.
Trus… apa yang harus diisikan di dalam file sendmail.ini tersebut?? yang diisikan adalah server SMTP yang akan digunakan untuk pengiriman email. Jika Anda mempunyai account GMAIL, maka silakan isikan beberapa baris perintah berikut ini
defaults logfile "C:\xampp\sendmail\sendmail.log" # SMTP Gmail account Gmail tls on port 465 tls_starttls off tls_certcheck off host smtp.gmail.com from xxx@gmail.com auth on user xxx@gmail.com password xxx account default : Gmail
Keterangan: pada parameter ‘from’ isikan alamat Gmail Anda, begitu pula untuk parameter ‘user’. Sedangkan pada parameter ‘password’ isikan password Gmail Anda.
Nah… proses setting module ‘Sendmail’ sudah dilakukan, selanjutnya Anda tinggal bikin script untuk kirim emailnya. Sebagai contoh misalkan diberikan script kirim email sederhana berikut ini
<?php $tujuan = "rosihanari@gmail.com"; $subject = "Contoh Email"; $pesan = "Ini hanya contoh email saja"; mail($tujuan, $subject, $pesan); ?>
Oya… sebelum Anda menjalankan script kirim email, pastikan PC Anda sudah terkoneksi ke internet supaya bisa terhubung dengan SMTP nya Gmail.
Lantas, bagaimana bila Anda tidak punya account di Gmail melainkan punya di Yahoo Mail? Untuk Yahoo Mail, Anda bisa menggunakan SMTP dari Yahoo Mail dengan konfigurasi sbb:
defaults logfile "C:\xampp\sendmail\sendmail.log" # SMTP Yahoo account Yahoo tls on port 465 tls_certcheck off tls_starttls off host smtp.mail.yahoo.com from xxx@yahoo.com auth on user xxx@yahoo.com password xxx # Set a default account account default : Yahoo
atau jika Anda memiliki SMTP server sendiri di web hosting, maka Anda bisa menggunakannya. Untuk detilnya silakan hubungi admin hosting Anda guna mendapatkan alamat SMTP servernya, nomor port dsb.
OK… selamat mencoba ya…
Kata kunci: email dari localhost - kirim email - script mail php -






Selamat Sore pak, mau tanya. Apakah PHP mail ini hanya bisa dijalankan untuk win32 saja dan tidak di win64. Terimakasih
mantap pak rosihanari. sukses tanpa hambatan. omong2 kok blm meluncurkan buku php terbaru ? ^^ ditunggu
@adi: belum mas, masih blm ada waktu
Maaf mau nanya nih
saya sudah mengikuti langkah2 di atas sudah saya coba dan tidak ada error tetapi tidak terkirim ke email?
itu disebabkan karena apa?
kira solusinya gmn?
maaf kebanyakan nanya hehe
maaf mau nanya saya sudah mengikuti semua langkah di atas
dan sudah berhasil tetapi masih tidak bisa masuk ke email saya?
itu errornya di mana ?
maaf pak.. tapi di bagian file sendmail di xampp yang sekarang udah agak beda.. saya coba pakai coding bapaknya,udah tidak bisa.. bisa mohon petunjuknya,pak?
mas function tls itu untuk apa ya?
disitu terdapat tls_certcheck off & tls_starttls off.
bisa tolong di jelaskan itu untuk apa ?
script yang mas kasih ini bisa running di account gmail saya, tetapi apabila saya menggunakan email account tidak dapat running padahal smtp dan port nya sudah sesuai.
thanks
Ralat maksudnya dengan menggunakan email kantor.
thanks
Pak Rosihan, ini sudah tidak berlaku di xampp yang baru. Mohon pencerahannya untuk xampp versit terbaru untuk proses pengiriman email di sendmailnya.
Pak, apa cara di atas dapat dgunakan selain di localhost??
@hendri antomy: bisa saja mas…