Menyimpan Tulisan Arab Ke MySQL
June 25th, 2009 | by rosihanari |
Cetak Artikel
Pada suatu hari saya menerima email dari salah satu teman saya yang menanyakan bagaimana cara menyimpan tulisan Arab ke dalam MySQL.
Sepintas… dalam hati mengatakan, “Ah… mudah”… but ternyata cukup melelahkan dan membingungkan juga untuk mencari solusinya. Akan tetapi akhirnya juga terselesaikan
Pertama, saya coba mencari sampel tulisan Arab di internet. Setelah menemukan salah satu situs yang isinya terdapat tulisan Arab, saya kemudian mengcopy teks Arabnya, lalu disisipkan langsung ke tabel MySQL dengan PhpMyAdmin. Dalam tabel tersebut saya coba membuat satu buah field saja dengan tipe data Varchar.
CREATE TABLE arab ( text varchar(100) );

OK… insert tersebut berhasil, dan tulisan Arab telah tersimpan ke tabel.

Selanjutnya, saya coba untuk menampilkan tulisan Arab yang ada dalam tabel MySQL tersebut ke halaman web dengan script PHP. Tapi… apa yang keluar? Ternyata yang keluar adalah karakter ‘????????’.

Waduh… ada apa ini? Feeling saya kemudian mengatakan, ah… siapa tahu PhpMyAdminnya gak support untuk insert data karakter dalam format Arab. Trus.. saya coba lakukan hal yang sama (insert data) langsung via Navicat (interface untuk administrasi MySQL berbasis Windows seperti halnya PhpMyAdmin). Eh… ternyata hal yang sama muncul.
Beberapa kali browsing dan Googling untuk mencari referensinya, gak ketemu-ketemu juga. Ketemu sih beberapa penjelasan, namun tidak ada yang berhasil.
Setelah lelah mencari, akhirnya saya coba mencari ide lain yaitu membuat script untuk insert data tapi melalui form yang dibuat sendiri.
arab.php
<form method="post" action="showarab.php"> <textarea name="input"></textarea> <input type="submit" value="submit" name="submit"> </form>
showarab.php
<?php
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");
// membaca teks input
$input = $_POST['input'];
// menyimpan teks input ke tabel MySQL
$query = "INSERT INTO arab VALUES('$input')";
mysql_query($query);
// menampilkan teks yang tersimpan
$query = "SELECT * ARAB arab";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
echo $data['text']."<br>";
}
?>
Secara sekilas, script di atas sama seperti proses insert data biasa, demikian pula dengan mekanisme untuk menampilkan datanya.
Setelah itu, saya coba memasukkan tulisan arab ke dalam form yang saya buat lalu mensubmitnya.

dan hasilnya

He…3x akhirnya bisa juga tampil di halaman web.
Dengan demikian dapat disimpulkan bahwa jika ingin menyimpan tulisan Arab ke MySQL, jangan langsung menyisipkannya via PhpMyAdmin atau Navicat namun buat terlebih dahulu form untuk inputnya.
Mau tau bentuk karakter dari tulisan Arab yang tersimpan dalam tabel MySQL nya setelah melalui proses di atas? ini dia…

Hasil di atas hanya didasarkan atas eksperimen saja. Barangkali ada di antara Anda yang bisa selain dengan cara di atas?
| Baca Juga Artikel Terkait |
Kata kunci: arabic - mysql - PHP - script - SQL -






mantap pak ari,, coba jd dosen saia
harusnya saya ngambil jurusan sistem informasi bukan otomotif,…
mas g’mna sih rumus tombol save buat nyimpen hasil input ??
dengan cara pertama bisa, tapi pada saat ambil data dari mysql:
$link = mysql_connect(\’localhost\’, \’user\’, \’password\’);
mysql_set_charset(\’utf8\’,$link);
$db_selected = mysql_select_db(\’dbname\’, $link);
nb: hilangkan tanda \
Kalau yang sudah pernah saya coba. Tulisan arab yang bisa tampil di web kalau di tulisnya (tulisan sumbernya) di tulis dengan menggunakan keybooard yang di set dengan bahasa arab.
Jika copy paste dari program biasanya tampilnya seperti huruf2 aneh.
Mas untuk akses kolom submit nya dari mana ya
syukron jazaka Allhu khoiran,…
ane butuh banget ini mas padahal
baaraka Allahu
Pak, kalau untuk menampilkan karakter mandarin di web dari database MsSql gimana ya? di database karakter udah masuk, tp ketika ditampilkan hurufnya jadi ngaco……
Terima kasih pak