.:: Jasa Membuat Aplikasi Website,Desktop,Android Order Now..!! | | Order Now..!! Jasa Membuat Project Arduino,Robotic,Print 3D ::.

Membaca File CSV dengan PHP, Memparsing dan Memasukkan ke Database MySQL

0 komentar


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم
bismillaahirrahmaanirrahiim

السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
Assalamu'alaikum warahmatullahi wabarakatuh

Membaca File CSV dengan PHP, Memparsing dan Memasukkan ke Database MySQL penulis gunakan akhir-akhir ini untuk mendapatkan data pergerakan harga saham dari YahooFinance. Maaf jika lama tidak mengupdate Blog, karena kesibukan lain yang cukup menyenangkan :)

Kenapa CSV? Karena CSV (Comma-Separated Value) adalah bentuk file hasil ekspor dari Spreadsheet yang paling familiar dan mudah dibaca walaupun langsung kita buka dengan Editor Teks biasa. Format CSV ini juga dapat diexport oleh Aplikasi Spreadsheet yang paling populer saat ini yaitu Microsoft Excel dan Google Docs Spreadsheet.

Cara memparsing file CSV sangat mudah, intinya tiap baris dipisahkan tanda enter ("\n"), kemudian tiap kolom dalam baris tersebut dipisahkan tanda koma.



Dalam hal ini file CSV penulis dapatkan dari YahooFinance dengan URL berikut ini :

http://download.finance.yahoo.com/d/quotes.csv?s=^JKSE,EIDO,UNVR.JK,ASII.JK,SMGR.JK,TLKM.JK,KLBF.JK,CPIN.JK,INDF.JK,PGAS.JK,HMSP.JK,UNTR.JK,GGRM.JK,ICBP.JK,BBCA.JK,BMRI.JK,BBRI.JK&f=sl1d1t1c1ohgv&e=.csv

Pendek kata hasil dari pemanggilan URL tersebut akan mendapatkan file CSV yang berisi IHSG, EIDO, Harga saham Unilever, Astra, Semen Gresik dan seterusnya ^_^. Hasil isi dari file CSV yang didapatkan kira-kira seperti ini :

"^JKSE",4433.625,"7/8/2013","5:00am",-169.182,4578.718,4580.087,4433.625,0
"EIDO",28.91,"7/8/2013","4:00pm",-0.46,28.44,29.14,28.44,371363
"UNVR.JK",28000,"7/8/2013","5:00am",-1300,29100,29250,28000,1242500
"ASII.JK",6500,"7/8/2013","5:00am",-250,6650,6650,6500,26076000
"SMGR.JK",15000,"7/8/2013","5:00am",-600,15600,15650,15000,12690500
"TLKM.JK",10900,"7/8/2013","5:00am",-100,10800,11200,10800,21053500
"KLBF.JK",1330,"7/8/2013","5:00am",-110,1430,1440,1330,46595000
"CPIN.JK",4275,"7/8/2013","5:00am",-200,4475,4475,4275,9003000
"INDF.JK",6600,"7/8/2013","5:00am",-450,7050,7050,6600,10572000
"PGAS.JK",5650,"7/8/2013","5:00am",+100,5600,5800,5500,22027500
"HMSP.JK",83000,"7/3/2013","5:00am",0,83000,83000,82000,2000
"UNTR.JK",16000,"7/8/2013","5:00am",-1300,17400,17400,16000,4427500
"GGRM.JK",46500,"7/8/2013","5:00am",-2550,48400,48550,46500,1403000
"ICBP.JK",10400,"7/8/2013","5:00am",-700,11100,11100,10350,2277000
"BBCA.JK",9100,"7/8/2013","5:00am",-400,9500,9500,9100,10262500
"BMRI.JK",7550,"7/8/2013","5:00am",-600,8150,8150,7550,52344000
"BBRI.JK",7300,"7/8/2013","5:00am",-450,7600,7600,7300,29002000

Nah kemudian penulis membuat script PHP untuk memparsing data CSV tersebut sebagai berikut :

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("panelsaham");
        //$url = "data.csv";
$url = "http://download.finance.yahoo.com/d/quotes.csv?s=^JKSE,EIDO,UNVR.JK,ASII.JK,SMGR.JK,TLKM.JK,KLBF.JK,CPIN.JK,INDF.JK,PGAS.JK,HMSP.JK,UNTR.JK,GGRM.JK,ICBP.JK,BBCA.JK,BMRI.JK,BBRI.JK&f=sl1d1t1c1ohgv&e=.csv";
$stockquotes = file_get_contents($url);
echo nl2br($stockquotes);
$baris = explode("\n", $stockquotes);
for ($i=0;$i<count($baris)-1;$i++)
{
$isi= explode(",", $baris[$i]);
mysql_query("INSERT INTO stock(quote, price, dt, tm, `change`, open, high, low, volume, waktu) VALUES ('$isi[0]', '$isi[1]', '$isi[2]', '$isi[3]', '$isi[4]', '$isi[5]', '$isi[6]', '$isi[7]', '$isi[8]', NOW())");
}
echo "DONE!";
?>

Script tersebut bisa mendapatkan data harga saham secara kontinyu setiap saat dan menyimpan ke database jika dipadukan dengan Script HTML/Javascript untuk Merefresh Halaman Web Setiap Periode Waktu Tertentu seperti pada artikel ini.

Hasilnya :



Harap dicatat bahwa script tersebut belum tentu berjalan dengan baik di Hosting Web Online, karena hampir semua Hosting sekarang mempunyai kebijakan untuk mendisable Script PHP yang mengambil informasi dari Web lain atau menghentikan script PHP yang bekerja secara kotinyu (repeating) terlalu cepat, misalnya beberapa menit sekali.

Project selengkapnya silakan didownload disini, jika kesulitan seperti ini cara downloadnya.

Semoga bermanfaat.
Update Contact :
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email : Fajarudinsidik@gmail.com
NB :: Bila Sobat tertarik Ingin membuat software, membeli software, membeli source code, membeli hardware elektronika untuk kepentingan Perusahaan maupun Tugas Akhir (TA/SKRIPSI), Insyaallah Saya siap membantu, untuk Respon Cepat dapat menghubungi kami, melalui :

No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email: Fajarudinsidik@gmail.com


atau Kirimkan Private messanger melalui email dengan klik tombol order dibawah ini :

ٱلْحَمْدُ لِلَّهِ رَبِّ ٱلْعَٰلَمِين
Alhamdulilah hirobil alamin

وَ السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
wassalamualaikum warahmatullahi wabarakatuh


Artikel Membaca File CSV dengan PHP, Memparsing dan Memasukkan ke Database MySQL, Diterbitkan oleh scodeaplikasi pada Senin, 08 Juli 2013. Semoga artikel ini dapat menambah wawasan Anda. Website ini dipost dari beberapa sumber, bisa cek disini sumber, Sobat diperbolehkan mengcopy paste / menyebar luaskan artikel ini, karena segala yang dipost di public adalah milik public. Bila Sobat tertarik Ingin membuat software, membeli software, membeli source code ,Dengan Cara menghubungi saya Ke Email: Fajarudinsidik@gmail.com, atau No Hp/WA : (fajar) : 085369237896, (puat) : 085267792168.

Tawk.to