- Pertama, bikin tabel dengan nama emoticon, field-nya cuma dua: "id" dengan "alt". Supaya praktis eksekusi aja langsung code di bawah di phpMyAdmin.
CREATE TABLE `db_anda`.`emoticon` (
`id` INT NOT NULL AUTO_INCREMENT ,
`alt` VARCHAR( 100 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM
Jangan lupa ganti `db_anda` dengan nama database yang ada di komputer anda. Kalau belum ada bisa dibikin dulu dengan kode di bawah.
CREATE DATABASE `nama_db` ;
- Database selesai, sekarang tinggal masukkin datanya, karna cuma untuk coba-coba, masukkin aja satu record dulu.
INSERT INTO `db_anda`.`emoticons` (
`id` ,
`alt`
)
VALUES (
NULL , ':lol:'
);
Dengan query di atas kita masukkin alt emoticon ":lol:" (lol = laughing out loud)
- Untuk image animasi emoticon yang mewakili simbol "lol", bikin/copy image yang diinginkan ke direktori emoticon/lol.gif. Jadi di direktori yang sama dengan file utama, bikin direktori emoticon, trus copy file image dengan nama "lol.gif" . saya sendiri untuk contoh ini menggunakan animasi dari Plurk yang ini.
- Sekarang, fungsi dalam PHP untuk fetching emoticon:
function fetch_emo($strnya) {
$hsl = $strnya;
$qE = mysql_query("SELECT * FROM emoticon") or die(mysql_error());
while ($aE = mysql_fetch_array($qE)) {
$offst = substr($aE["alt"], 1);
$img = "<img src="emoticon/" . substr($offst, 0, -1) . ".gif" border="0" alt="emotion" />";
$hsl = str_replace($aE["alt"], $img, $hsl);
}
return $hsl;
}
- Terakhir, implementasi.
<?
mysql_connect("localhost", "user", "password") or die(mysql_error()); //ganti sesuai MySQL ente
mysql_select_db("db_anda") or die(mysql_error());
?>
<html>
<head>
<title>Test Emoticon</title>
</head>
<body>
<?
$str_test = "Test kacang euy :lol:";
$sesudah = fetch_emo($str_test);
echo "Sebelum: $str_test<br /><br />";
echo "Sesudah: $ssd";
?>
</body>
</html>
Hasilnya:
Sebelum: Test kacang euy :lol:
Sesudah: Test kacang euy
Sekarang, saya jelasin dikit cara kerjanya.
Di langkah pertama dan kedua, kita mempersiapkan database yang mau dipake untuk nyimpan string tertentu yang mo di-replace dengan emoticon.
Karna disimpan dalam database, kita bisa dengan mudah ngapus atau nambah emoticon-emoticon baru.
Dalam fungsi fetch_emo() yang kita bikin di langkah ke-4, kita melakukan query ke database, dan nge-parse satu-satu string emoticon (dalam contoh di atas ":lol:"), trus diganti dengan image di direktori emoticon/lol.gif. Nah, mungkin pada bertanya, lol.gif dapet dari mana ?? Dalam fungsi ini, supaya kita gak perlu repot-repot mendefinisikan path image, saya bikin path imagenya diambil dari string di antara titik dua (":") ditambah dengan ekstensi ".gif", sehingga kalo string emoticon-nya ":lol:", berarti path image-nya adalah "lol.gif".
Tidak ada komentar:
Posting Komentar