File Global.ASA adalah file opsional. Pengguna dapat mendeklarasikan objek sesi dan seluruh aplikasi dalam skrip acara yang ditentukan. Saat ini, editor saluran teknologi Fooxin telah secara khusus mengumpulkan dan menyelesaikan informasi yang relevan. Teman yang tertarik dapat pergi ke artikel berikut untuk mempelajari lebih lanjut!
Kita semua tahu bahwa .ASA adalah nama file sufiks. Ini adalah akronim untuk aplikasi server aktif.
Ini sebenarnya adalah file opsional di mana penulis program dapat menentukan skrip acara dan mendeklarasikan objek dengan lingkup sesi dan aplikasi. Isi file ini tidak digunakan untuk ditampilkan kepada pengguna, tetapi untuk menyimpan informasi acara dan objek yang digunakan secara global oleh aplikasi. File ini harus disimpan di direktori root aplikasi. Setiap aplikasi hanya dapat memiliki satu file global.asa.
Kesalahpahaman yang paling umum tentang file global.aSa adalah dapat digunakan sebagai perpustakaan untuk fungsi penggunaan umum dan subrutin. File global.asa hanya dapat digunakan untuk membuat referensi dan menangkap startup objek, serta objek aplikasi akhir dan objek sesi.
File global.ASA diakses berdasarkan peristiwa tingkat sesi dan dipanggil dalam tiga kasus berikut:
Format file standar global.asa adalah sebagai berikut:
<Skrip bahasa = "vbscript" runat = "server"> sub application_onstart 'application_onstart run end sub sub session_onstart pertama kali pelanggan mengakses beranda aplikasi' session_onstart run run end sub sub session_onend 'session_onend run end sub session_onend' Sesi Sesi.
1. Session_onstart
Pertama -tama mari kita lihat kode yang mengontrol pengguna untuk memasukkan halaman:
1. Global.ASA (ditempatkan di bawah direktori root dari direktori virtual yang didebug)
<Skrip bahasa = "vbscript" runat = "server"> sub session_onstart 'selama pengguna masuk ke situs ini untuk pertama kalinya, ia akan melompat ke homepage response.redirect (http://www.jb51.net) end sub </script>
Kemudian debug file apa pun di direktori virtual saat ini, dan Anda akan menemukan bahwa semua halaman melompat ke http://www.webjx.com/ <
Melalui contoh "masuk paksa ke halaman tertentu" ini, dapat dibayangkan bahwa sangat penting ketika halaman beranda perlu diikuti.
Mari kita terus mengamati acara session_onstart dan session_onend dengan contoh "jumlah pengguna online"
2. Session_onend
2. Global.ASA (ditempatkan di bawah direktori root dari direktori virtual yang didebug)
<Bahasa skrip = vbscript runat = server> sub application_onstart 'nilai awal adalah 0 aplikasi ("online") = 0 end sub sub session_onstart' Akses pengguna menambahkan 1 aplikasi.lock Application ("Online") = Aplikasi ("Online") + 1 Aplikasi. Aplikasi ("Online") - 1 Application.unlock End Sub </Script>3. Online.asp
<%jika request.queryString ("Logout") = "true" lalu response.abandon () response.end end jika%> Ada saat ini <%= aplikasi ("online")%> online <a href = "online.asp? Logout = true"> Keluar </a>Anda menemukan bahwa hanya ada satu aplikasi ("online") di halaman, dan juga dirujuk. Jadi dari mana nilainya berasal? Ini adalah kunci dari file global.asa. Anda dapat membuka jendela di mesin ini, menutup jendela atau keluar dari debugging kedua metode tersebut.
3. Terus perbaikannya
Anda akan menemukan bahwa efek menutup jendela setelah koneksi "keluar" berbeda dari menutup jendela secara langsung. Karena sesi ada dalam waktu, ketika menutup jendela secara langsung, acara session_onend tidak dapat dipicu, jadi bagaimana ide yang hampir mustahil ini dapat diwujudkan?
Seperti yang kita semua tahu, ketika halaman web ditutup, itu dapat disertai dengan acara Onunload. Jadi selama Onunload dapat dieksekusi, bukankah hanya itu yang kita butuhkan? Katakan lebih sedikit omong kosong, modifikasi online.asp
<%jika request.QueryString ("Logout") = "true" lalu sesi.abandon () response.end end jika%> <body onunload = javaScript: window.open ("exit.asp")> Ada saat ini <%= aplikasi ("online")%> online <a href = "online.asp? Logout = true"> exit </a>%> online <a href = "online.asp? Logout = true"> exit </a>Perhatikan bahwa saat online.asp adalah onunload, keluar.asp akan dibuka. Kemudian cukup atur session.abandon () di Exit.asp dan tidak OK.
Exit.asp
<%session.abandon ()%> <script> self.close () </cript>
Tentu saja, skrip skrip ditambahkan untuk menutup dirinya segera setelah sesi dicatat. Sekarang, hanya aplikasi web dengan statistik online sudah cukup.
4. Studi mendalam global.asa
Dari debugging di atas, Anda akan belajar dari satu contoh dan menerapkannya kepada orang lain dan pasti akan mengajukan pertanyaan: Bagaimana cara mengontrol jumlah pengguna terdaftar secara online? Mari kita baca dokumen berikut satu per satu:
4. Global.ASA (ditempatkan di bawah direktori root dari direktori virtual yang didebug)
<Skrip bahasa = "vbscript" runat = "server"> Sub Application_onstart Application ("online") = 0 end sub sub session_onstart end sub sub session_onend jika session.contents ("pass") kemudian 'tentukan apakah itu aplikasi sublock end end end end.Perhatikan bahwa blok session_onstart di global ini.aSa tidak menyebabkan peristiwa apa pun.
Karena begitu pengguna mengakses server, terlepas dari apakah pengguna masuk atau tidak, acara Onstart akan dihasilkan. Sekarang yang Anda butuhkan hanyalah masuk ke pengguna online, jadi Anda tidak dapat menambahkan 1 ke acara Onstart.
Juga, karena acara Onend akan dihasilkan terlepas dari apakah sesi pengguna yang masuk sudah berakhir (jika pengunjung mengunjungi server tetapi tidak masuk, acara Onend juga akan dihasilkan setelah sesi berakhir), jadi pernyataan IF digunakan dalam acara sesion_onend untuk menentukan apakah itu adalah acara Onend dari pengguna yang masuk. Jika demikian, jumlah orang online akan dikurangi dengan 1.
Dan perlu dicatat bahwa penggunaan sesi. Dengan kata lain, Anda tidak dapat menulis sesi ("pass") secara langsung, tetapi Anda perlu menulis session.contents ("pass").
5. Login.asp
Anggota terdaftar saat ini <%= aplikasi ("online")%>.
<a href = "login.asp? logout = true"> keluar </a> <%else%> <form action = "login.asp" method = "post"> <input type = "text" name = "name"> <br> <input type = "Name" name = "pwd"> <br> <input type "=" kirim "name" name = "pwd"> <br> <input type = "kirim" name "name =" pwd "> <br> <input type =" kirim "name" name = "pwd"> <br> <input type = "Submit" name "name =" pwd "
Cukup deteksi bahwa ketika nama CNBruce dan kata sandi adalah cnrose, sebuah sesi ("pass") = true dihasilkan, yang dinilai dalam global.asa.
5. Terus gunakan imajinasi Anda
Pikirkan tentang itu, pikirkan lagi. Tidak cukup hanya menghitung berapa banyak orang yang online, dan itu juga membutuhkan penilaian status online pengguna.
Anda dapat membayangkan metode dasarnya. Ketika pengguna masuk, atur online ke 1 di login.asp (unggah jika ada database), tetapi ketika pengguna offline, atur online ke 0. Untuk memperbaikinya, Anda perlu memodifikasi acara session_onend dan mengatur online ke 0 dalam acara (nilai yang sama akan diunggah) ...
Tentu saja, global.asa jauh lebih dari itu. Tapi kami tidak perlu terburu -buru untuk menguasai semuanya sekarang. Ketika kami bersentuhan dengan database, kami akan kembali untuk melihatnya dan terus mempelajari file tersebut. Saya percaya bahwa saat itu kita pasti akan sangat menyadari. Jadi, mari kita pahami di atas sepenuhnya terlebih dahulu.
Saya berharap bahwa melalui artikel ini, saya akan menganalisis secara singkat penggunaan file Global.aSa ASP, yang dapat memberi Anda lebih banyak bantuan. Lebih banyak pengetahuan teknis akan tersedia di jaringan saluran teknologi wuxin!