Tidak bisa dihindari bahwa sebuah Aplikasi Web harus menyimpan data yang terdapat pada halaman tertentu ke dalam variabel global. Tujuannya, supaya nilai tersebut dapat digunakan kembali pada halaman yang lainnya. Tidak terkecuali pula dengan Aplikasi Web yang dihasilkan oleh PHPMaker.
Cara yang paling mudah untuk mengatasi hal ini adalah dengan menggunakan session variable. Artinya, variabel global tersebut cocok disimpan di session. Supaya lebih dapat dipahami, mari simak contoh berikut.
Katakanlah kita akan menyimpan data di field Field1 yang baru saja berhasil ditambahkan oleh Pengguna. Solusinya, gunakan server event Row_Inserted untuk menyimpan nilai yang baru saja berhasil ditambahkan ke Database ke dalam session variable yang dalam hal ini berperan sebagai variabel global:
// Row Inserted event function Row_Inserted($rsold, &$rsnew) { //echo "Row Inserted" $_SESSION["My_Global_Var"] = $rsnew["Field1"]; $this->setSuccessMessage("Sukses tambah data: " . $_SESSION["My_Global_Var"]); }
Selanjutnya, untuk menampilkan nilai yang terdapat di session variable tadi , yaitu My_Global_Var untuk digunakan di setiap halaman, maka kita cukup menggunakan server event Page_Loading, karena server event ini akan dipanggil di semua halaman yang dihasilkan oleh PHPMaker:
function Page_Loading() { //echo "Page Loading"; echo "Last Inserted: " . @$_SESSION["My_Global_Var"]; }
Betapa mudahnya, bukan? 😀
Teddy A mengatakan
Master ,
tanya nih , pd saat login ada satu variabel yg diambil dari salah satu field misa companyid id tabel user … nah kita mau simpan sbg $_session[“compnayid”] . nah itu bgmn caranya
Terus kita mau panggil session tersebut pada saat add/edit tabel tertentu dan dimasukkan sbg bagian dari insert/update query … sehingga user tidak perlu input manual atau pilih dari lookup table
terimakasih
Masino Sinaga mengatakan
Dimas Agung Prasetyo mengatakan
Nampaknya teknik ini tidak bisa dipakai lagi pada phpmaker 2020 versi terbaru. Bbeebrapa program yg saya buat dan menggunakan session variables jadi tidak bisa jalan ketika diupdate ke phpmaker 2020
Masino Sinaga mengatakan
Ah, masa sih?
Coba seperti apa kodenya?