Showing posts with label CakePHP vs PRADO. Show all posts
Showing posts with label CakePHP vs PRADO. Show all posts

Sunday, July 26, 2009

Cakephp untuk Konfigurasi Extension .CTP di Dreamweaver

Bagi para pengguna Framework CakePHP pasti merasakan kesulitan dalam meng-edit file template, karena ber-extension .CTP (terutama untuk pemula seperti saya).
berikut ini saya berikan cara mengedit settingan Dreamweaver Anda, agar tetap bisa menampilkan highlight dan tootips pada editor dreamweaver, seperti ketika Anda membuka file dengan format .HTML atau .PHP.
Pada Contoh berikut saya melakukan settingan extension .CTP pada cakephp untuk editor Dreamweaver 8.

ini dia step by step (ouu.bibehh) nya:
step 1.
tambahkan CTP pada ..\Configuration\Extensions.txt
menjadi seperti ini,



contoh diatas untuk men-set file .CTP sama seperti file .HTML document. jika Anda mau ber-eksperimen lagi, bisa juga Anda ubah untuk sama seperti file .PHP.

step 2.
tambahkan CTP pada ..\Configuration\DocumentTypes\MMDocumentTypes.xml
menjadi seperti ini,



setelah itu jangan lupa klik kanan pada salah satu file .CTP, pilih "open with > choose more", pilih dreamweaver sebagai applikasi standar untuk membuka file tersebut.

dan sekarang Anda bisa mencoba nya...
ini hasilnya,
selamat mencoba!!
#> cake bake
baca selengkapnya...


OMG! it's a great article, Share Oh!


Thursday, February 07, 2008

Ajax Livesearch with PRADO

Beberapa hari ini saya mencoba untuk bisa mengimplementasikan pembuatan Ajax dengan framework PRADO. Ternyata tidak semudah yang dibayangkan, tapi memang sebenarnya mudah.

Saya ada ide untuk membuat Livesearch, tapi tidak sekedar suggest, seperti halnya google suggest. Disini kita akan membuat livesearch seperti yang ada di Windows Vista. Jadi tinggal ketik, result nya langsung keluar, without button or enter pressed. Ini saya edit dari tutorial blog PRADO.

Ini code untuk tampilannya : LiveSearch.page

<com:TContent ID="Main">

<h3 class="portlet-title">Live-Search</h3>

<div id="load" style="display: none">

<com:TImage ImageUrl="/prado/blog/assets/img/load.gif" /></div>

<com:TAutoComplete ID="Live" OnSuggest="doSearch" >

<prop:ClientSide

OnLoading="Element.show('load')"

OnComplete="Element.hide('load')"/>

</com:TAutoComplete>

<br />

<br />

<com:TActiveLabel ID="LiveSearchLabel" Text="" />

<com:TActivePanel ID="ResultPanel" ActiveControl.EnableUpdate="true">

<com:TRepeater ID="PostList">

<prop:ItemTemplate>

<div class="post">

<com:TActiveHyperLink

Text="<%# $this->Data->title %>"

NavigateUrl="<%# $this->Service->constructUrl('posts.ReadPost',array('id'=>$this->Data->id)) %>" />

</div>

</prop:ItemTemplate>

</com:TRepeater>

</com:TActivePanel>

</com:TContent>

Ini code untuk controlnya : LiveSearch.php

<?php

class SearchPost extends TPage

{

private $criteria;

private $count_result;

public function doSearch($sender, $param)

{
// getToken, if you make OnSuggest...

$key=TPropertyValue::ensureString($param->getToken());

// make some criteria for query ?

$this->criteria = new TActiveRecordCriteria;

$this->criteria->Condition = 'content LIKE :key OR title LIKE :key';

$this->criteria->Parameters[':key'] = '%'.$key.'%';

// send databind ?

$this->PostList->DataSource = $this->matchSearch();

$this->PostList->VirtualItemCount = $this->count_result;

$this->PostList->dataBind();

// to indicate variable $key is update on browser

$this->LiveSearchLabel->Text = "Search ".$this->count_result." results for <b>".$key."</b> :";

$this->ResultPanel->render($param->getNewWriter());

//$this->ResultPanel->focus();

}

public function renderResult($sender, $param)

{

//$this->ResultPanel->render($param->getNewWriter());

}

public function matchSearch()

{

$posts= PostRecord::finder()->findAll($this->criteria);

$this->count_result = count($posts);

return $posts;

}

}

?>

Komponen utama yang kita pakai disini adalah TAutoComplete dan TRepeater. Kegunaannya adalah sebagai alat input tanpa menggunakan tombol (langsung perhuruf yang ditulis) dan TRepeater untuk menampilkan datanya. Sebenarnya kita juga bisa menggunakan TActiveTextBox, tapi perlu ada tambahan javascript-nya. Dan biar lebih menarik, kita tambahkan gambar loading.gif, agar tampak kesan Ajaxnya...


Gimana?

Mudah bukan. Mudah-mudahan bisa bermanfaat. Dan silahkan Anda kembangkan dengan ide masing-masing...

Thank’s untuk bantuan teman-teman di pradosoft.

;D


baca selengkapnya...


OMG! it's a great article, Share Oh!


Wednesday, February 06, 2008

Cara mudah Bikin Web sendiri

Iya, saya tidak mengada-ada, memang untuk membuat aplikasi web saat ini sangat mudah. Kalau ingat dulu (masa-masa awal kuliah), untuk membuat aplikasi web kita akan dibikin pusing oleh berbagai macam algoritma dan sintax. Apa arti web pun kita bingung, apalagi untuk mulai menggunakan javascript atau php. Belum lagi aplikasi harus dibangun dengan pendekatan object oriented (apa ini.....temennya study oriented ?? ).

Nah sekarang semua serba mudah. Kalo mau ngak repot sama sekali, kita tinggal gunakan CMS (Content Management System). Teknologi ini begitu mudahnya, sampai-sampai kita tidak perlu coding sama sekali dalam membangun aplikasi web. Tinggal ekstrak source file-nye ke server, setting sesuai keinginan, dan web sudah bisa digunakan. Fasilitasnya lengkap lagi, mulai dari halaman admin, manage user, manage posting, email, sampai untuk kebutuhan e-commers. Coba aja macam-macam CMS yang free dan open source, seperti : Joomla!, Mambo, Zencart, dll. Cocok untuk anda yang tidak mau pusing dengan syntax atau algoritma.

Tapi jadi masalah kalo CMS dipakai untuk kuliahan(apalagi bidang informatika seperti saya), pastinya dimarahin dosen. Karena kita akan terlalu dimanja, padahal kita juga pasti perlu tahu tentang web engineering. Mulai dari software, hardware, sampai metode pembangunan aplikasi web. Tapi kalo bangun sendiri dari nol akan repot dan tidak maksimal. Untuk itulah ada solusi kita menggunakan framework, framework untuk web engineering. Lho kan sudah ada CMS, ngapain repot? CMS selain alasan terlalu “mudah”, juga karena setiap CMS dibuat dengan spesifikasi tertentu, misalnya untuk keperluan e-commers, blog, portal, forum, dll. Sedangkan kalo kita menggunakan framework, kita akan lebih bebas ber-ekspresi, sesuai keinginan. Menggunakan Framework mengharuskan kita untuk coding, baik dalam bentuk HTML, PHP, Javascript, atau bahkan XML, dll. Tapi jangan khawatir, menggunakan framework pastinya akan lebih praktis dan mudah, bila dibandingkan kita coding sendiri dari nol (tanpa framework). Aplikasi yang dihasilkan juga akan lebih baik, dengan parameter kerapihan arsitektur, reusability, keamanan, kemudahan dipelajari, dan banyak kelebihan lainnya (tergantung framework yang digunakan).

Mungkin ada ratusan jumlah framework yang bertebaran seantero jagad raya ini, dan itu semua pada umumnya gratis. CakePHP, Symfony, PRADO, Zend, WATC, Seagull,dll. Konsep framework ini pastinya menggunakan pendekatan object-oriented programming, yang terkenal itu. Dan mayoritas menggunakan arsitektur Model-View-Controller, kecuali PRADO. Artinya pembangunan aplikasi web kita akan dibagi kedalam tiga concern yang berbeda, Model untuk representasi data, View untuk interaksi dengan end user, sedangkan Controller adalah tempat seluruh proses yang menjadi penghubung Model dengan View. Kalau anda merasa agak sulit, percayalah bahwa ini sebenarnya sangat mudah. PRADO sendiri menggunakan pendekatan arsitektur event-driven, mirip seperti Delphi. Untuk itu saya mengambil sebuah analogi untuk penggunaan framework ini, anda past bisa membandingkan mana lebih mudah menggunakan Delphi atau Pascal? (kedua memiliki dasar syntax yang sama). Sekali lagi, kalau pun saat ini Anda merasa kesulitan, maka saya sarankan untuk tetap percaya bahwa ini sebenarnya mudah. Tinggal masalah waktu saja, sampai Anda mengerti menggunakannya, dan Anda akan merasakan peningkatan produktifitas kerja dalam hal pembangunan aplikasi web (he….sedikit promosi dan maksa….).
baca selengkapnya...


OMG! it's a great article, Share Oh!


Monday, January 21, 2008

Memulai Ajax dengan CakePHP

Untuk memulai menggunakan Ajax di CakePHP, tidaklah sesulit yang kita bayangkan. Bahkan CakePHP menjamin kita tidak akan menuliskan script javascript untuk bisa membangun aplikasi Ajax.... masak siih ??

Pertama-tama, kita mulai dengan bismillah...

Kedua-dua, kita perlu mendapatkan tools atau library javascript yang telah tersohor namanya, yaitu prototype dan script.aculo.us, silahkan download semuanya.

Dan pastikan anda telah mengekstrak prototype.js (yanga ada di folder lib) dan semua file yang ada difolder src, letakkan didalam webroot/js anda.

Sekarang kita akan membuat file-file javascript tersebut dapat digunakan dihalaman manapun dari aplikasi CakePHP kita. Caranya, letakkan script ini di bagian head dari file app/views/layouts/default.ctp

if(isset($javascript)) {

echo $javascript->link('prototype.js');

echo $javascript->link('scriptaculous.js?load=effects.js');

echo $javascript->link('controls.js');

};

Artinya, kalau javascript anda telah diset ada, maka aplikasi akan bisa mengambil tools-tools ajax tersebut. Sebaliknya ini tidak akan berjalan bila browser anda mematikan javascript.

Sekarang tambahkan Helpers “Javascript” dan “Ajax” pada Controller anda.

Setelah itu, silalahkan anda baca API dan Manual dari CakePHP, untuk mempermudah menggunakan Helpers Ajax yang sudah disediakan. Sudah lengkap dan jelas kok, jadi jangan takut...

Saya kasih contoh satu hal untuk buat link yang ‘berbau’ ajax.

Gini caranya, silahkan perhatikan penjelasan yang ada di manual CakePHP :

link($title, $href, $options, $confirm, $escapeTitle);

options sendiri akan berisi :

$options[‘url’][‘update’][‘loading’]...bla...bla...

Nah, sebagai pemula kita pake 3 variable penting dulu aja ya....

Gini contohnya (lakukan ini di View anda) :

$ajax->link('klik saya', '/posts', array('update'=>'main',

'loading' =>"Element.show('load_page')", 'loaded'=>"Element.hide('load_page');

Effect.Appear('post')"));

Mudahkan? Begini penjelasannya..... untuk main, load_page, post...... merupakan nama id dari tag div, bagian yang akan kita update dengan menggunakan ajax, silahkan anda bikin sendiri sesuai kreatifitas. Nanti kalo anda sudah jago, ajarin saya juga ya...

baca selengkapnya...


OMG! it's a great article, Share Oh!


Thursday, December 13, 2007

Install PRADO atau CakePHP ?

Sebelum kita mencoba kelebihan dari masing-masing Framework ini, ada baiknya kita menilik lebih jauh bagaimana siih perbedaan proses instalasi keduannya. Kita semua pasti tahu kedua Framework ini berbasis PHP, jadi jangan lupa untuk menyediakan PHP lengkap dengan Apache dan MySQL nya.

Awalnya saya coba menggunakan paket XAMPP 1.6.2, didalamnya ada Apache 2.2, PHP 5.2.2 dan MySQL 5.0.41. lumayan, versi terbaru. Tapi pas saya gunakan PRADO dan CakePHP keluaran terakhir, malah jadi error. Saya mencobanya dengan menggunakan PRADO 3.1.1 dan CakePHP 1.2.pre-beta. Errornya sama, seperti ini :
dan browser tidak menampilkan apapun.

Sampai pada akhirnya saya coba untuk mengganti server XAMPP dengan versi sebelumnya, XAMPP 1.5.1. Dan hasilnya stabil, kita bisa menggunakan PRADO dan CakePHP versi terbaru dengan baik. Berikut ini akan coba saya berikan pengalaman ketika akan menggunakan PRADO dan CakePHP.

Instalasi PRADO cenderung lebih mudah, bahkan saya tidak melakukan settingan apapun. Sesuai dengan manual yang dijelaskan PRADO, kita cukup meng-ekstrak paket PRADO pada webroot kita, dan PRADO pun siap digunakan. Kalaupun ada masalah, silahkan lihat manual atau forum PRADO.

Sedangkan untuk CakePHP, kita butuh usaha lebih. Hal awal yang harus dilakukan adalah meng-ekstak CakePHP 1.2 beta ke webroot anda. Setelah itu ikuti langkah-langkah berikut :
  1. edit http.conf dengan mengaktifkan mod_rewrite.so
  2. kemudian (masih di http.conf) pastikan direktori webroot (misal htdocs) telah memiliki setting seperti berikut :
    Options Indexes Multiviews,
    AllowOverride All,
    Order allow,
    deny Allow from all
    Untuk lebih jelasnya jangan lupa juga sedikit membaca komentar yang ada. Kemudian coba refresh browser anda, jika tampilan CakePHP menjadi lebih berwarna, maka anda telah berhasil.
  3. Sekarang tinggal menyelesaikan settingan, sesuai perintah yang tampil di browser anda. Untuk setting database cobalah edit file app/config/database.php.default dengan mengikuti petunjuk yang ada. Setelah itu save dengan nama database.php.
  4. Anda juga bisa mengubah nilai security.salt yang ada pada app/config/core.php, bebas dengan nilai apapun. Tapi tahapan setting ini tidak saya temukan pada versi CakePHP sebelumnya.
  5. Finish. CakePHP anda sudah bisa digunakan, walaupun mungkin masih ada settingan optional yang harus anda lakukan.
Mudah bukan ? hanya melalui 5 tahapan saja. Memang jika dibanding PRADO, CakePHP bisa jadi lebih rumit instalasinya. Tapi hal ini saya rasa belum cukup untuk menilai tingkat kesulitan dari kedua framework ini. Nyatanya kita tidak begitu kesulitankan dalam meng-install-nya.

Oks, masih ada satu permasalahan yang belum terjawab, yaitu tentang error yang terjadi karena XAMPP yang saya gunakan. Mudah-mudahan ada yang bisa bantu. Dan semoga tulisan ini bisa menjadi bahan pertimbangan anda untuk memilih framework yang akan anda gunakan.
baca selengkapnya...


OMG! it's a great article, Share Oh!


 

Followers

Social Share

[ttm]. topan tambunan menulis Copyright © 2009 Gadget Blog is Designed by Ipietoon Sponsored by Online Business Journal