Bab 7 Penerapan halaman login pengguna BLOG Doking
telah menyelesaikan pendaftaran pengguna. Pengguna sekarang dapat masuk ke situs web dan memposting catatan serta membalas catatan.
Login pengguna, setelah verifikasi benar, tampilan halaman berubah setelah pengguna login.
(1) Buka template bkblog.dwt.aspx, masukkan tabel yhtab di kolom kiri, dan desain seperti yang ditunjukkan pada lingkaran hitam pada Gambar 7-1.
(2) Masukkan kumpulan data yhlog tentang kueri tabel YH untuk memverifikasi bahwa login pengguna sudah benar.
①Atur kumpulan data yhlog yang akan difilter, seperti yang ditunjukkan pada Gambar 7-2.
Gambar 7-1 Gambar desain tabel yhtab
Gambar 7-2 Memasukkan kumpulan data yhlog
② Klik tombol "Lanjutan" untuk beralih ke mode kumpulan data lanjutan, seperti yang ditunjukkan pada Gambar 7-3.
Gambar 7-3 Masukkan kumpulan data yhlog
③ Klik parameter "+" untuk memunculkan kotak dialog "Edit Parameter", isi nama sebagai "@Logpas", dan pilih "WChar" sebagai jenisnya, seperti yang ditunjukkan pada Gambar 7-4.
Gambar 7-4 Tambahkan untuk berpartisipasi dalam Logpass
④Klik tombol "Buat" untuk memunculkan kotak dialog "Hasilkan Nilai", bernama "Logpass", dan pilih "Variabel Formulir" sebagai sumber, seperti yang ditunjukkan pada Gambar 7-5.
Gambar 7-5 Kotak dialog Hasilkan nilai
⑤ Klik "OK" untuk menyimpan pengaturan dan kembali ke kotak dialog kumpulan data yhlog. Ubah pernyataan SQL dan hasil modifikasi ditunjukkan pada Gambar 7-6.
Gambar 7-6 Memodifikasi kumpulan data yhlog
(3) Sebelum tag <html>, masukkan kode yang ditunjukkan pada lingkaran merah pada Gambar 7-7.
Gambar 7-7 Menentukan fungsi uselog
(4) Seret bidang YHNAME di bawah kumpulan data yhlog di templat bkblog.dwt.aspx ke posisi mana pun di halaman, lalu seret bidang YHID di bawah kumpulan data yhlog setelahnya Kode adalah sebagai berikut:
<%# yhlog.FieldValue("YHNAME", Container) %><%# yhlog.FieldValue("YHID", Container) %>
Ubah kode di atas menjadi:
<%# uselog(yhlog.FieldValue(" YHNAME", Container),yhlog .FieldValue("YHID", Container)) %>
(5) Masukkan kumpulan data bjre tentang kueri tabel ZT dan kembalikan jumlah total catatan studi yang diterbitkan oleh pengguna.
① Atur kumpulan data ke "Filter", bidang filternya adalah: YHID, dan metode filternya adalah: nilai input, seperti yang ditunjukkan pada Gambar 7-8.
Gambar 7-8 Masukkan kumpulan data bjre
② Klik "Lanjutan", beralih ke mode kumpulan data lanjutan, dan modifikasi SQL seperti yang ditunjukkan pada Gambar 7-9.
Gambar 7-9 Memodifikasi kumpulan data bjre
③Klik tombol "Edit" dan ubah YHID menjadi session("USEID") pada kolom teks.
Gambar 7-10 Mengedit parameter kumpulan data bire
④ Tekan tombol "OK", lalu tekan tombol "OK" untuk menyelesaikan kumpulan data bire.
(6) Masukkan kumpulan data tentang kueri tabel HF dan kembalikan jumlah total catatan studi yang diterbitkan oleh pengguna. Kecuali untuk tabel kueri yang berbeda, pengaturan lainnya sama dengan kumpulan data bjre (Anda dapat menyalin dan menempelkan kumpulan data terlebih dahulu, lalu memodifikasinya).
(7) Seret bidang Eprl100 di bawah kumpulan data bjre ke belakang "Posting catatan:" di tabel yhtab; seret bidang Eprl100 di bawah kumpulan data ke belakang "Posting balasan:" di tabel yhtab.
(8) Pindahkan kursor sebelum "Informasi Pengguna" pada tabel yhtab, dan klik "Bind Data" di bawah menu shortcut ASP.NET.
Gambar 7-11 Sisipkan data terikat.
Pertahankan kursor pada garis vertikal merah pada Gambar 71 dan masukkan: session("USENAME")
(9) Kembali ke tampilan desain dan buat hyperlink ke "Publikasikan Catatan Baru" pada tabel yhtab : .. /ztfb.aspx
Buat hyperlink ke "Modify Information" pada tabel yhtab: ../yhsg.aspx
Hasilnya ditunjukkan pada Gambar 7-12.
Gambar 7-12 Modifikasi tabel yhtab
(10) Pilih tabel yhtab, kembali ke tampilan kode, tekan "Ctrl+X" atau pilih "Potong" pada menu [Edit], cara lama: tempel ke notepad yang baru dibuat atau dalam dokumen Word.
(11) Kembali ke tampilan desain, pilih tab log tabel, dan gerakkan kursor ke posisi garis vertikal merah seperti yang ditunjukkan pada Gambar 7-13.
Gambar 7-13 Pindah ke posisi kursor
(12) dan masukkan kode seperti yang ditunjukkan pada lingkaran merah pada Gambar 7-14.
Gambar 7-14 Sisipkan kode sebelum label <form>
(13) Gerakkan kursor setelah tag akhir Yhlogfrm </form> dan masukkan kode seperti yang ditunjukkan pada lingkaran merah pada Gambar 7-15.
Gambar 7-15 Sisipkan kode setelah tag </form>
(14) Tempelkan tabel yhtab yang dipotong pada langkah 7 sebelum kode <%end if%> dan setelah <% else %>.
(15) Simpan template bkblog.dwt.aspx. Buka semua halaman web berdasarkan template bkblog.dwt.aspx, lalu salin dan tempel kumpulan data yang baru ditambahkan yhlog, bjre, dan plre di template bkblog.dwt.aspx di [Perilaku Server]. Lalu masukan kodenya seperti langkah ke 3, dan OK!
(16) Telusuri index.aspx di browser IE, seperti yang ditunjukkan pada Gambar 7-16 sebelum pengguna login, dan seperti yang ditunjukkan pada Gambar 7-17 setelah pengguna berhasil login. Ingatlah bahwa ASP.NET tidak mendukung transmisi pengkodean gb2312. Ini perlu dimodifikasi di bab sebelumnya, jadi jangan gemetar di masa depan.
Gambar 7-16 Sebelum pengguna login
Gambar 7-17
Pengingat setelah pengguna login: Untuk memudahkan pembelajaran pembaca, tutorial dibagi menjadi beberapa modul. Faktanya, semua fungsi harus dilakukan di template dari awal, terutama data set dan header loader yang harus dimasukkan ke dalam template, karena tidak dapat memperbarui halaman web setelah modifikasi selanjutnya.
Setelah login, pengguna dapat memposting pesan balasan ke setiap catatan belajar.
(1) Buka hf.aspx, masukkan form yhplfrm, lalu masukkan tabel Hftab. Masukkan kontrol kotak teks server di tabel dengan ID HFNAME; masukkan kontrol area teks server dengan ID HFTEXT; tombol dengan ID plbottom. Atur ke nonaktif, dan hasilnya ditunjukkan pada Gambar 7-18.
Gambar 7-18 Desain tabel Hftab yang relevan
(3) Ikat sesi data ("usename") ke setelah "nama:" di tabel Hftab (metodenya seperti yang ditunjukkan pada langkah 8 dari 7.1 untuk mengikat nama pengguna sebelum "informasi pengguna" ).
(4) Seret bidang ZTNAME di bawah kumpulan data Ztre ke kotak teks HFNAME. Di jendela properti kotak teks HFNAME, ubah nilai awal:
<%# Ztre.FieldValue("ZTNAME", Container) %>
menjadi:
<%# "RE:"&Ztre.FieldValue("ZTNAME", Container) %>
(5) Pilih tombol plbottom, klik kanan dan pilih bilah status <input # plbottom>, dan pilih "Edit Label" di pop Menu pintasan -up, seperti yang ditunjukkan pada Gambar 7-19.
Gambar 7-19 Pilih tag pengeditan cepat <input # plbottom>
(6) Pada tag pengeditan cepat <input # plbottom> yang muncul, ubah:
dinonaktifkan="benar"
menjadi:
dinonaktifkan=<%# iif((sesi( "USENAME ")<>nothing),false,true) %>
Hasilnya ditunjukkan pada Gambar 7-20.
Gambar 7-20 Label edit pintasan <input # plbottom>
menyetel tombol plbottom. Ini dinonaktifkan sebelum pengguna login dan tersedia setelah pengguna login.
(4) Tambahkan perilaku server rekaman penyisipan, kirimkan nilai dari formulir yhplfrm, pilih tabel penyisipan sebagai HF, dan pengaturan lainnya ditunjukkan pada Gambar 7-21.
Gambar 7-21 Tambahkan perilaku server catatan sisipkan
Pada Gambar 7-21, Anda dapat melihat bahwa bidang HFID, HFTIME, YHID, dan ZTID tidak mendapatkan nilai. Bidang HFID adalah nomor otomatis, dan database akan secara otomatis menambahkan nilai ke rekaman; bidang HFTIME memiliki nilai default yang disetel ke date() di Access, sehingga database akan secara otomatis menambahkan tanggal hari ini ke rekaman yang baru ditambahkan. Bidang YHID adalah kode ID pengguna yang masuk, dan bidang ZTID adalah ID catatan yang akan diterbitkan. Oleh karena itu, kode ID pengguna yang login harus ditambahkan ke kolom YHID, dan kode ID catatan yang akan diterbitkan harus ditambahkan ke kolom ZTID.
(5) Kembali ke tampilan kode dan temukan kode untuk memasukkan record (dkconn, HF), seperti yang ditunjukkan pada bagian yang dipilih berwarna hitam pada Gambar 7-22.
Gambar 7-22 Cari kode untuk memasukkan record (dkconn, HF)
(6) Ubah kode:
CommandText='<%# "INSERT INTO HF (HFNAME, HFTEXT) VALUES (?, ?,)" %>'
menjadi:
CommandText ='<%# "INSERT INTO HF (HFNAME, HFTEXT, ZTID, YHID) VALUES (?, ?, ?, ?)" %>'
(7) Tambahkan parameter secara berurutan:
<Parameter Name="@ZTID" Value = '<%# Ztre.FieldValue("ZTID", Kontainer) %>' Type="Integer" />
<Nama Parameter="@YHID" Value='<%# SESSION("USEID") %>' Type= " Integer" />
Hasilnya ditunjukkan pada Gambar 7-23.
Gambar 7-23 Hasil modifikasi penyisipan kode record (dkconn, HF)
(8) Sebelum pesan balasan dipublikasikan, judul balasan dan isi balasan harus diverifikasi untuk mencegah diterbitkannya pesan balasan dengan judul kosong atau isi kosong. Lihat metode memasukkan kontrol validasi RequiredFieldValidato di Bagian 6.2, dan tambahkan kontrol validasi RequiredFieldValidato ke kotak teks HFNAME dan kontrol area teks HFTEXT.
(9) Saat pengguna memposting pesan balasan, jumlah balasan dalam catatan belajar harus otomatis bertambah 1, yaitu bidang HFZS di bawah tabel ZT harus otomatis bertambah 1.
① Di panel [Perilaku Server], masukkan perilaku server "Perbarui Catatan", atur tabel pembaruan ke ZT, atur sementara nilai yang dikirimkan dari formulir yhplfrm, atur sementara: 'HFZS' mendapat nilai dari 'HFTEXT' (sebagai 'Integer') ;Asumsi sementara: 'ZTID' menggunakan 'HFTEXT' sebagai 'Integer' untuk memilih record
② Mengapa semuanya bersifat sementara? Yaitu membiarkan Dreamweaver secara otomatis menghasilkan beberapa kode terlebih dahulu, sehingga nanti dapat dimodifikasi. Pertama beralih ke tampilan kode, temukan kode asli dari catatan pembaruan (dkconn,ZT), dan temukan kode:
<Parameter Name="@HFZS" Value='<%# IIf((Request.Form("HFTEXT" ) <> Tidak ada ), Request.Form("HFTEXT"), "") %>' Type="Integer" />
<Parameter Name="@ZTID" Value='<%# IIf((Request.Form(" HFTEXT") < > Nothing), Request.Form("HFTEXT"), "") %>' Type="Integer" />
Ubah menjadi:
<Parameter Name="@HFZS" Value='<%# Ztre. FieldValue(" HFZS", Kontainer)+1 %>' Type="Integer" />
<Nama Parameter="@ZTID" Value='<%# session("ztanw") %>' Type="Integer" />
(10) Simpan hf.aspx.
Setelah masuk, pengguna dapat mempublikasikan catatan belajar baru selain pesan balasan.
(1) Buat halaman web dinamis baru ztfb.aspx yang dihasilkan dari template bkblog.dwt.aspx, dan masukkan tabel ztfb dengan satu kolom dan lima baris di area utama yang dapat diedit.
(2) Tambahkan kumpulan data zthb, atur filter ke YHID, dan atur parameter ke variabel tahapan USENAME. Desainnya ditunjukkan pada Gambar 7-24.
Gambar 7-24 Menambahkan kumpulan data zthb
(3) Seret kolom yang relevan di bawah kumpulan data ke tabel ztfb. Untuk metodenya, lihat metode di Bagian 4.2.
(4) Buka hf.aspx, salin formulir yhplfrm, tempelkan ke baris kelima tabel zthb di halaman web ztfb.aspx, kosongkan kotak teks HFNAME, dan lakukan modifikasi yang diperlukan. 25.
Gambar 7-25 Desain tabel ztfb
(2) Ganti nama kotak teks HFNAME menjadi ZTNAME dan area teks HFTEXT menjadi ZTTEXT.
(3) Biarkan baris pertama, kedua, dan ketiga pada tabel zthb menjadi area berulang dari kumpulan data zthb, lalu masukkan navigasi kumpulan data di baris keempat tabel.
(4) Masukkan LMID daftar/menu, klik nilai daftar di jendela propertinya, dan di kotak dialog nilai daftar pop-up, masukkan label proyek sebagai: item desain; nilai sebagai: 1, tekan tombol "OK" kunci, seperti yang ditunjukkan pada Gambar 7-26 yang ditunjukkan.
Gambar 7-26 Kotak dialog nilai daftar LMID
(5) Tetap memilih LMID daftar/menu, alihkan ke tampilan kode, cari kode asli LMID daftar/menu, seret bidang LMID di bawah menu kumpulan data, dan ganti data dengan nilainya sama dengan 1 , seperti yang ditunjukkan pada Gambar 7-27.
Gambar 7-27 Tarik dan lepas bidang LMID di bawah menu kumpulan data
(6) Tarik bidang LM di bawah menu kumpulan data dan ganti "item desain".
Gambar 7-28 Tarik field LM ke bawah menuda kumpulan data
(7) Pilih kode pada lingkaran merah pada Gambar 7-3-5 dan tentukan sebagai area berulang dari menuda kumpulan data Gambar 7-29.
Gambar 7-29 Tentukan area pengulangan menuda kumpulan data dalam daftar
(8) untuk menambahkan perilaku server "Sisipkan Catatan", dan pengaturannya ditunjukkan pada Gambar 7-30.
Gambar 7-30 Tambahkan perilaku server "Sisipkan Catatan"
(9) Beralih ke tampilan kode, temukan kode asli dari catatan penyisipan (dkconn, ZT), temukan kode:
CommandText='<%# "INSERT INTO ZT (LMID, ZTNAME, ZYTEXT) ) VALUES (?, ?, ?)" %>'
Ubah menjadi:
CommandText='<%# "MASUKKAN KE ZT (LMID, ZTNAME, ZYTEXT,YHID) VALUES (?, ?, ?, ?)" %>'
( 10) Tambahkan parameter:
<Parameter Name="@YHID" Value='<%# session("USEID") %>' Type="Integer" />
Hasilnya ditunjukkan pada Gambar 7-31.
Gambar 7-31 Kode asli untuk memasukkan record (dkconn, ZT) modifikasi
Desain halaman untuk mengubah informasi pengguna pada dasarnya sama dengan desain halaman registrasi pengguna.
(1) Buka halaman registrasi yhlogok.aspx, simpan sebagai yhsg.aspx, dan lakukan modifikasi yang sesuai. Hasilnya ditunjukkan pada Gambar 7-32.
Gambar 7-32 desain halaman yhsg.aspx
(2) Hapus perilaku server "Sisipkan catatan (dkconn, YH)" dan tambahkan kumpulan data yhsg, seperti yang ditunjukkan pada Gambar 7-33.
Gambar 7-33 Menyisipkan kumpulan data yhsg
(3) Ikat kolom yang relevan di bawah kumpulan data yhsg ke kotak teks yang sesuai.
Gambar 7-34 Mengikat teks dinamis ke kotak teks yang relevan
(4) Tambahkan pembaruan perilaku server catatan, atur sementara: 'YHID' dan 'YHNAME' sebagai 'Integer' untuk memilih catatan, hasilnya ditunjukkan pada Gambar 7-35.
Gambar 7-35 Tambahkan perilaku server catatan pembaruan
(5) Dalam kode asli catatan pembaruan, temukan kode:
<Parameter Name="@YHID" Value='<%# IIf((Request.Form("YHNAME") < > Nothing), Request.Form("YHNAME"), "") %>' Type="Integer" />
Ubah menjadi:
<Parameter Name="@YHID" Value='<%# IIf((Not Session( "USEID") Bukan Apa-apa), Session("USEID"), "") %>' Type="Integer" />
(6) Simpan yhsg.aspx.