Kondisi Persisten

Aplikasi Web sering memerlukan untuk mengingat apa yang pengguna akhir kerjakan dalam permintaan halaman sebelumnya agar permintaan halaman baru bisa dilayani sesuai dengan itu. Persisten kondisi untuk menangani masalah ini. Secara tradisional, jika halaman perlu memelihara interaksi pengguna, ia akan mengurut ulang sesi, cookie, atau field tersembunyi. PRADO menyediakan baris baru skema kondisi persisten, termasuk kondisi tampilan, kondisi kontrol, dan kondisi aplikasi.

Kondisi Tampilan

Kondisi tampilan berada di jantung PRADO. Dengan kondisi tampilan, halaman Web menjadi tangguh dan mampu menyimpan kembali halaman ke kondisi terakhir kali pengguna akhir berinteraksi sebelum permintaan halaman saat ini. Pemrograman Web mirip dengan pemrograman GUI Windows, dan para pengembang dapat berpikir secara kontinyu tanpa mencemaskan mengenai perjalanan pulang pergi antara pengguna akhir dan server web. Sebagai contoh, dengan kondisi tampilan, sebuah kontrol kotak centang dapat mendeteksi apakah input pengguna mengubah konten dalam kotak centang atau tidak.

Kondisi tampilan hanya tersedia untuk kontrol. Kondisi tampilan dari kontrol bisa dimatikan dengan menyetel properti EnableViewState menjadi false. Untuk menyimpan variabel dalam kondisi tampilan, panggil yang berikut,

$this->setViewState('Caption',$caption);

di mana $this merujuk ke obyek kontrol, Caption adalah kunci unik yang mengidentifikasi variabel $caption yang disimpan dalam kondisi tampilan. Untuk mengambil variabel kembali dari kondisi tampilan, panggil yang berikut,

$caption = $this->getViewState('Caption');

Kondisi Kontrol

Kondisi kontrol mirip dengan kondisi tampilan dalam setiap aspek kecuali bahwa kondisi kontrol tidak bisa dimatikan. Kondisi kontrol bertujuan dipakai untuk menyimpan informasi kondisi krusial halaman atau kontrol mana yang tidak bekerja dengan baik.

Untuk menyimpan dan mengambil variabel dalam kondisi kontrol, gunakan perintah berikut,

$this->setControlState('Caption',$caption); $caption = $this->getControlState('Caption');

Kondisi Aplikasi

Kondisi aplikasi merujuk ke data yang persisten melalui sesi pengguna dan permintaan halaman. Contoh umum dari kondisi aplikasi adalah penghitung kunjungan pengguna. Nilai penghitung adalah persisten meskipun sesi pengguna saat ini berakhir. Catatan, kondisi tampilan dan kondisi kontrol hilang jika permintaan pengguna untuk halaman yang berbeda, karena kondisi sesi hilang jika sesi pengguna berakhir.

Untuk menyimpan dan mengambil variabel dalam kondisi aplikasi, gunakan perintah berikut,

$application->setGlobalState('Caption',$caption); $caption = $application->getGlobalState('Caption');

Kondisi Sesi

PRADO melapisi manajemen sesi tradisional dalam modul THttpSession. Modul dapat diakses dari dalam setiap komponen dengan menggunakan $this->Session, di mana $this merujuk ke obyek komponen.