Thursday, December 15, 2016

Cara Mendapatkan dan Menampilkan Email dari GMAIL dengan PHP

     Pada tutorial kali ini kami akan menjelaskan bagaiman cara mendapatkan dan menampilkan email yang belum dibaca (unread) yang ada di akun gmail anda menggunakan gmail feed atom di PHP. Metode ini menggunakan cURL untuk mengambil email dari server Gmail melalui feed atom. Server akan mengirimkan respon berupa data XML dan kita akan merubahnya menjadi sebuah list yang enak untuk dibaca dengan HTML.
gmail
Sebelum memulai kita perlu memastikan bahwa fungsi cURL di server sudah di aktifkan, jika tidak maka kita bisa mengaktifkannya dengan merubah file php.ini, jika tidak memiliki akses untuk merubah file php.ini silahkan hubungi administrator server kamu untuk mengaktifkannya.
Langkah pertama kita akan membuat sebuah function untuk mengambil email yang belum dibaca.

function check_email($username, $password)
{
//Connect Gmail feed atom
$url = "https://mail.google.com/mail/feed/atom";

// Send Request to read email
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_ENCODING, "");
$curlData = curl_exec($curl);
curl_close($curl);

//returning retrieved feed
return $curlData;
}
Selanjutnya memanggil function yang sudah dibuat dengan menyertakan username dan password.
$feed = check_email("YOUR_USERNAME", "YOUR_PASSWORD");
Langkah terakhir yaitu mengkonversi file XML yang didapat menjadi data list dalam HTML agar lebih mudah untuk dibaca. Jika anda mau data tersebut bisa juga disimpan ke dalam database.
$x = new SimpleXmlElement($feed);
echo "<ul>";
foreach($x->entry as $entry)
{

echo '<li><p><strong>'. $entry->title.'</strong><br>';
echo $entry->summary;
echo '</p></li>';
}
echo "</ul>";
Download Script Lengkapnya disini
Sekian artikel dari saya kali ini, semoga bisa bergunakan untuk menyelesaikan problem di pekerjaan anda.

1 comment:
Write comments