Integrasi dreamweaver dan mysql untuk membuat grafik menggunakan amchart

Bukan promosi amchart lhooo….tapi ini semata-mata hanya karena saya biasa menggunakan dan mudah dimodifikasi menggunakan dreamweaver. Saya asumsikan pembaca sudah familier menggunakan dreamweaver, maksudnya tau cara create site, create recordset dsb.

Ok langsung saja buat page di dreamweaver, dan kita create recordset, dalam kasus ini recordset kita beri nama statkunjungan_rec. Sedangkan amchart dalam kasus ini saya gunakan versi 1.5. Chart yang saya pilih adalah tipe amline untuk menampilkan grafik jumlah kunjungan per-tanggal kedatangan. Contoh perintah dari situs amchart untuk memanggil chart line adalah sbb

  <script type="text/javascript" src="../amline/swfobject.js"></script>
	<div id="flashcontent1">
		<strong>You need to upgrade your Flash Player</strong>
	</div>

	<script type="text/javascript">
		// <![CDATA[		
		var so = new SWFObject("../amline/amline.swf", "amline1", "260", "200", "8", "#FFFFFF");
		so.addVariable("path", "../amline/");
		so.addVariable("settings_file", escape("amline/amline4/amline_settings1.xml"));
		so.addVariable("data_file", escape("amline/amline4/amline_data1.txt"));
//	so.addVariable("chart_data", "");
		so.addVariable("preloader_color", "#000000");
		so.write("flashcontent1");
		// ]]>
	</script>

pada listing script diatas, data yang dipanggil dalam bentuk amline_data1.txt. Setelah dicek ternyata isinya berupa looping data yang dipisahkan tanda titik koma untuk memisahkan antara axis dan ordinat chartnya. Sehingga apabila kita ingin integrasikan dengan recordset bawaan dreamweaver perlu ada sedikit modifikasi. Tahapannya adalah sbb :

1. Ubah dengan benar alamat link lokasi setting, misalnya link ke swfobject.swf, amline_settings1.xml dsb
2. Nonaktifkan pemanggilan “data_file” dengan memberi tanda komentar (//) di sebelah kiri
3. Aktifkan “chart_data” dengan menghilangkan tanda komentar di sebelah kiri
4. Panggil perulangan data dari recordset dreamweaver dengan do….while….. sbb:

<?php do {
echo date(‘d-m-Y’, strtotime($row_statkunjungan_rec[‘tgl’])); ?>;<?php echo $row_statkunjungan_rec[‘jml_kunjungan’].’\n’;
} while ($row_statkunjungan_rec = mysql_fetch_assoc($statkunjungan_rec)); ?>

Perintah ini akan menghasilkan looping data tgl;jml_kunjungan dan perbaris dipisahkan dengan ‘\n

Sehingga listing lengkapnya adalah sbb :

<script type="text/javascript" src="path_to_file/swfobject.js"></script>
<!-- this id must be unique! -->
<div id="flashcontent_cari" style="position:relative">
</div>

<script type=”text/javascript”>
// <![CDATA[
var so = new SWFObject(“path_to_file/amline.swf”, “amline1”, “650”, “300”, “8”, “#FFFFFF”);
so.addVariable(“path”, “path_to_file/amline/”);
so.addVariable(“settings_file”, encodeURIComponent(“path_to_file/amline_kunjungan.xml”));
//so.addVariable(“data_file”, encodeURIComponent(“amline_data1.txt”));
so.addVariable(“chart_data”,”<?php do {
        echo date(‘d-m-Y’, strtotime($row_statkunjungan_rec[‘tgl’])); ?>;<?php echo $row_statkunjungan_rec[‘jml_kunjungan’].’\n’;
        } while ($row_statkunjungan_rec = mysql_fetch_assoc($statkunjungan_rec)); ?>”);
so.write(“flashcontent_cari”);  // this id must match the div id above
// ]]>
</script>

Mudah-mudahan membantu 🙂

Iklan

Format tanggal (date) di PHP dan MySQL melalui Dreamweaver

Sebenarnya sudah banyak artikel seputar manipulasi format tanggal baik di PHP maupun MySQL, tapi tak apalah siapa tahu tulisan kecil inipun bisa membantu teman-teman. Secara default, MySQL menyimpan data ‘date’ dalam format ‘yyyy-mm-dd’. Untuk merubah format tanggal tersebut bisa kita lakukan dengan merubah format di MySQL, namun cara ini tidak saya bahas, karena menurut saya lebih fleksibel kalau kita menyiasati format tampilan di sisi client.

Misal kita sudah menyiapkan tabel dengan salah satu kolom bernama ‘tgl’ dengan format kolom ‘date’, dan kita membuat recordset misal dengan nama ‘panggiltgl_rec’. Untuk merubah format tgl tersebut, kita bisa menggunakan fungsi strtotime.

  1. Misal kita ingin menampilkan format ‘dd-mm-yyyy’ maka cara memanggilnya adalah <?php echo date(‘d-m-Y’, strtotime($row_panggil_rec[“tgl”])); ?>
  2. Misal kita ingin menampilkan format ‘yyyy’ maka cara memanggilnya adalah <?php echo date(‘Y’, strtotime($row_panggil_rec[“tgl”])); ?>
  3. Kalau kita ingin menampilkan format Indonesia, misalnya Minggu, 6 Maret 2011, maka kita menambahkan fungsi LC_TIME, strftime. Penggunaannya seperti ini <?php setlocale(LC_TIME,’in’);
    echo strftime(‘%A, %d %B %Y’, strtotime($row_panggiltgl_rec[‘tgl’])); ?>

Jika point nomor 3 masih bermasalah dalam menampilkan format tanggal indonesia (seperti yang saya alami, maka coba setting ini : setlocale(LC_ALL, 'id_ID.UTF8', 'id_ID.UTF-8', 'id_ID.8859-1', 'id_ID', 'IND.UTF8', 'IND.UTF-8', 'IND.8859-1', 'IND', 'Indonesian.UTF8', 'Indonesian.UTF-8', 'Indonesian.8859-1', 'Indonesian', 'Indonesia', 'id', 'ID', 'en_US.UTF8', 'en_US.UTF-8', 'en_US.8859-1', 'en_US', 'American', 'ENG', 'English');

Sekian dulu, semoga membantu

Menampilkan format tanggal dd/mm/yyyy

Format date di mysql secara default menggunakan aturan yyyy/mm/dd. Apabila kita ingin menampilkan tanggal dengan format di Indonesia seperti dd/mm/yyyy menggunakan dreamweaver sebagai editor php maka scriptnya adalah

<?php echo date(‘d/m/Y’, strtotime($row_recordset[‘kolom_tanggal’])); ?>

Format penanggalan bisa diubah misal d-m-Y, atau d saja, m saja, Y saja tergantung kebutuhan