Archive for the ‘Web Programming’ Category

It’s Just Simple Cache Object

Skrip nie bertujuan agar performa dan kecepatan sistem meningkat. Saya coba tuk membuat sebuah cache dengan skrip PHP, walaupun tidak persisten tapi dari pengalaman penulis, ini dapat meningkatkan performa dari sistem karena sistem tidak secara langsung ngambil data dari database tapi dari cache yang sudah dipersiapkan walaupun cache itu juga disimpan dalam bentuk file. Cache Objek, adalah istilah yang dibuat oleh penulis sendiri yaitu tempat menyimpan objek. Sebenarnya Ide nya cukup sederhana yaitu membuat objek data dan kemudian menyimpannya ke dalam file. Penyimpanan ke file tentu saja memakai fungsi serialisasi yang akan membuat struktur data objek tidak rusak. Setelah dipikir-pikir ide ini mirip konsep ORM (Objek Relational Mapping).Berikut adalah skrip nya:
// file artikel.php
// author: muse
// tanggal : 25 Feb 2010
class artikel{
var $id;
var $penulis;
var $tanggal;
var $isi;
function artikel($id,$penulis,$tanggal,$isi){
$this->id=$id; $this->penulis=$penulis; $this->tanggal=$tanggal; $this->isi=$isi;
}
function getId(){
return $this->id;
} function getPenulis(){
return $this->penulis;
}
function getTanggal(){
return $this->tanggal;
}
function getIsi(){
return $this->isi;
}
}

// file artikels.php
// author: muse
// tanggal : 25 Feb 2010
class artikels{
var filename="cache_artikel.txt";
var arts;
function artikels(){
$this->arts=$this->_getBase();
}
function _getBase() {
return unserialize(file_get_contents($this->filename));
}
function fillCache($id,$penulis,$tanggal,$isi){
$art=new artikel($id,$penulis,$tanggal,$isi); $this->arts[$id]=$art;
}
function getArtikels($asArray=false) {
if($asArray) return @array_keys($this->arts);
else return @implode("
",@array_keys($this->arts));
}
function _save() {
$fp=@fopen($this->filename,''w'');
@fwrite($fp,serialize($this->users));
@fclose($fp);
}
}

cache_artikel.txt merupakan file cache tuk menampung data dari tabel artikel di database. Tiap kali objek artikels dibuat, fungsi _getBase() akan secara otomatis dijalankan yang itu berarti menunserialisasi isi dari file cache_artikel.txt.
// file DB2Cache
// author: muse
// tanggal : 25 Feb 2010

function refreshCache(){
include "connectDB.php";
$obj=new artikels();
$query="select id,penulis,tanggal,isi from artikel";
while($data=mysql_fetch_array()){ $obj->fillCache($data[''id''],$data[''penulis''],$data[''tanggal''],$data[''isi'']);
}
}
function getChache(){
return $obj->getArtikels();
}

fungsi refreshCache() akan mengambil data dari tabel artikel dan kemudian menyimpannya ke dalam cache melalui fungsi fillCache di class artikels. n fungsi getCache() untuk mengambil data di cache file.

It’s Just About Smarty Template Engine

Smarty adalah sebuah template engine untuk PHP. Dengan menggunakan template engine ini memungkinkan seorang programmer dan seorang designer dapat bekerja secara terpisah tanpa perlu yang satu mengetahui yang lain bagaimana ia bekerja.
Template engine lain biasanya hanya menyediakan variabel-variabel subtitusi dan blok-blok yang bersifat dinamis, tapi smarty jauh lebih ’smart’ dari template-template lain tersebut. Smarty hadir dengan penambahan fitur seperti configuration files, fungsi-fungsi tempalte, variabel modifier, dan banyak lainnya. Selain itu smarty juga engine yang sangat cepat pemrosesannya dan memiliki cache output. Berikut adalah contoh script dengan menggunakan smarty.

// kode index.php
require("Smarty.class.php");
$smarty = new Smarty; $smarty->assign("Title","My Homepage");
$smarty->assign("Names",array("Mustofa","Achmad"));
$smarty->assign("Asal","Malang");
$smarty->display("index.tpl");

// kode index.tpl
{include file="header.tpl" title="contoh page"}
Tanggal dan jam sekarang: {$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

Nama Lengkap: {$Names[0]} {$Names[1]}

Asal: {$asal}


Ini merupakan contoh

{include file="footer.tpl"}

// kode header.tpl

{popup_init src="/javascripts/overlib.js"}
{$title} - {$Name}

// kode footer.tpl

Ini adalah header

Free Web Hosting

* library smarty hanya pada Smarty.class.php
* file template memakai ekstensi file .tpl.

It’s Just SVG on Web Browser

Setelah kemaren ngulas SVG d desktop trus lanjut SVG d JME,,,na skrang coba ngulas SVG di web…file SVG pnya format .svg yg jg dapet di jalankan d browser…Banyak web browser yang udah support SVG tapi masih harus dengan menggunakan plug-in atau kontrol ActiveX seperti Adobe SVG Browser…
Dengan menggunakan SVG di halaman website maka download akan terasa uennteng bgt…hehehe,,knapa demikian..??tu karena informasi yang disimpan SVG berbentuk teks (dalam XML), bukan binary code…
cukup deh intermilannya…n nie adalah contoh sederhana yg hny menampilkan tulisan hello IOC pada browser…

"http://www.w3.org/TR/2000/03/WD-SVG-20000303/DTD/svg-20000303 stylable.dtd">

Hello IOC !



Simpan dengan nama ioc.svg,,,trus lanjutkn dengan membukany pada browser2 kesayangan anda…. :D :D :D

Just Simple MVC

Hoaaaaaammmm…Skarang masih jam 3,,huh..kurang sejam lg out dari sini…Tp Ktimabng bosen+ngantuk lebih baek nulis something tul ndak!!…Betul…betul…betul..
Dalam tulisan ini..gue coba tuk sedikit mengulas about MVC,,oke let’s begin…
Dalam OOP(Object Oriented Programming) udah terkenal tuh yg namany MVC singkatan dari Model Viewer Controller..Sedikit ringaksan tentang MVC, yaitu Model akan berfungsi untuk memberikan data – data yang diperlukan, biasanya sih berhubungan dengan database. Viewer berfungsi sebagai pengatur tampilannya, dan Controller adalah penghubung antara model dan viewer. Pasti bingung deh buat temen2 yg blom pernah denger konsep ini…Tapi jngan bilang “mumet” dulu,,coz skarang qt coba bwt contoh sederhanany aja…
pertama – tama kita coba buat viewer-nya :

class view{
function index($data){
echo $data['judul'];
echo $data['tulisan'];
}
}
?>

nah di sana terlihat kita membuat class view_index yang didalamnya ada fungsi index dan memiliki masukan $data. Setelah itu kita simpan dengan nama viewer_index.php

lalu lanjut ke modelnya :

class model{
function getJudul(){
return "Salam IOC";
}

function getTulisan(){
return "IOC yes...yes...Jos...";
}
}
?>

karena kita tahu bahwa di viewer membutuhkan data title dan tulisan maka model akan mengakomodasi kebutuhan si viewer tersebut. dengan dua fungsi yaitu getJudul dan getTulisan. Biasanya sih nggak secupu itu langsung di-return. biasanya pake akses – akses ke database. tapi males nerangin disini cara ngakses ke databasenya, lagian temen2 jg hapal di luar kepala Hehehe. Setelah itu kita simpan dengan nama model_index.php

nah ini di bagian paling menariknya yaitu membuat controllernya :

include("viewer_index.php");
include("model_index.php");

class controller_index{
function index(){
$data['titlle'] = model_index::getJudul();
$data['tulisan'] = model_index::getTulisan();
view_index::index($data);
}
}
?>

di awal – awal kita include dulu viewer dan model yang sudah kita buat lalu dengan fungsi itu kita siapkan data – data yang akan dimasukkan ke viewer. Data – data itu kita dapat dari model caranya dengan memanggil fungsi yang ada di model. Setelah data sudah siap barulah kita masukkan ke dalam viewer.

nah model, view, dan controller sudah jadi. Jadi, apa yang akan kita lakukan selanjutnya?? Dalam PHP dia akan langsung memanggil index.php karena itu bagaimana cara mengakses controller kita?

include("controller_index.php");

controller_index::index();
?>

nah hanya tinggal begitu saja. Seperti layaknya main program dalam OOP yang memang tidak terlalu banyak baris di dalamnya. Simpanlah dengan nama index.php