Aplikasi PRADO Pertama Saya

Dalam seksi ini, kami membimbing Anda melalui pembuatan aplikasi PRADO pertama Anda, aplikasi terkenal "Hello World".
"Hello World" barangkali adalah aplikasi PRADO interaktif paling sederhana yang bisa Anda buat. Ia menampilkan kepada pengguna-akhir sebuah halaman dengan tombol kirim yang judulnya adalah Click Me. Setelah pengguna mengklik tombol, judulnya diubah ke Hello World.
Ada banyak pendekatan yang dapat mencapai tujuan di atas. Seseorang dapat mengirim halaman ke server, menentukan variabel POST, dan membuat halaman baru dengan judul tombol yang dimutakhirkan. Atau seseorang cukup menggunakan JavaScript untuk memutakhirkan judul tombol setelah event klien onclick.
PRADO mempromosikan pemrograman Web berbasis-komponen dan kendali-event. Tombol disajikan oleh obyek TButton. Ia melapisi judul tombol sebagai properti Text dan mengaitkan tindakan klik pengguna dengan event sisi-server OnClick. Untuk merespon klik pengguna pada tombol, seseorang cukup perlu menyertakan fungsi ke event OnClick tombol. Di dalam fungsi, properti tombol Text diubah sebagai "Hello World". Diagram berikut menampilkan urutan di atas,

Aplikasi PRADO kita terdiri dari tiga file, index.php, Home.page dan Home.php, yang diatur sebagai berikut, di mana setiap direktori dijelaskan sebagai berikut. Catatan, struktur direktori di atas bisa dikustomisasi. Sebagai contoh, seseorang dapat memindahkan direktori protected ke luar direktori Web. Anda akan mengetahui bagaimana melakukan ini setelah Anda melewati tutorial ini.
  • assets - direktori yang menyimpan file pribadi yang dipublikasikan. Lihat seksi assets untuk lebih jelasnya. Direktori ini harus bisa ditulisi oleh proses server Web.
  • protected - path basis aplikasi yang menyimpan data aplikasi dan file naskah pribadi. Direktori ini harus dikonfigurasi tidak bisa diakses terhadap pengguna-akhir.
  • runtime - path penyimpan runtime aplikasi. Direktori ini dipakai oleh PRADO untuk menyimpan informasi runtime aplikasi, seperti kondisi aplikasi, data di-cache, dll. Direktori ini harus bisa ditulisi oleh proses server Web.
  • pages - path basis yang menyimpan semua halaman PRADO.
Tip:Anda juga dapat menggunakan framework/prado-cli.php naskah baris perintah untuk membuat struktur direktori Prado. Sebagai contoh, ketik perintah php path/to/prado-cli.php -c helloworld dalam direktori di mana Anda ingin membuat proyek helloworld.
Ketiga file yang kita pakai dijelaskan sebagai berikut.
  • index.php - naskah entri dari aplikasi PRADO. File ini dibutuhkan oleh semua aplikasi PRADO dan satu-satunya file naskah yang secara langsung bisa diakses oleh pengguna-akhir. Konten dalam index.php sebagian besar terdiri dari tiga baris berikut,
    require_once('path/to/prado.php');  // sertakan naskah prado
    $application=new TApplication;      // buat turunan aplikasi PRADO
    $application->run();                // jalankan aplikasi
  • Home.page - template untuk setiap halaman standar saat pengguna tidak secara eksplisit menetapkan halaman yang diminta. Sebuah template menetapkan penyajian tata letak komponen. Dalam contoh ini, kita gunakan dua komponen, TForm dan TButton, masing-masing terkait ke tag HTML <form> dan <input>. Template berisi konten berikut,
    <html>
      <body>
        <com:TForm>
          <com:TButton Text="Click me" OnClick="buttonClicked" />
        </com:TForm>
      </body>
    </html>
  • Home.php - Kelas halaman untuk halaman Home. Ia terutama berisi metode yang terkait dengan event tombol OnClick.
    class Home extends TPage
    {
        public function buttonClicked($sender,$param)
        {
            // $sender refers to the button component
            $sender->Text="Hello World!";
        }
    }
Aplikasi sekarang siap dan dapat diakses melalui: http://Web-server-address/helloworld/index.php, menganggap helloworld adalah direktori di bawah Web DocumentRoot. Coba untuk mengubah TButton dalam Home.page ke TLinkButton dan lihat apa yang terjadi.
Kode sumber lengkap dari demo ini dapat ditemukan pada rilis PRADO. Anda juga dapat mencoba demo online.

Load disqus comments

0 komentar