Direkomendasikan: Bicara tentang menulis kode yang mirip dengan fungsi mesin pencari menggunakan ASP Pertama, buat database akses. Ada tabel Urlindex di perpustakaan, di mana bidang URL dan kata kunci masing -masing diindeks, sebagai berikut: berikut ini adalah konten yang direferensikan: teks URL (indeks
Ada banyak kategori operasi basis data yang mencari online. Saya tidak lebih baik dari itu, tetapi saya hanya menulisnya sendiri dan menggunakannya lebih banyak. Jadi tidak ada yang istimewa tentang saya, saya hanya menggunakan kebiasaan saya. Adapun efisiensi dan aspek lainnya, tolong beri saya nasihat! Lai
Kode Program:
| Berikut ini adalah konten yang dikutip: <% Kelas DBClass '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Deskripsi variabel 'Conn ----------------------------------------------------------------------------------------------------------------------- 'Strsql --------------------------------------------------------------------------------------------------------------------- 'vtbname --------------------------------------------------------------------------------------------------------------------- 'VPKEY --------------------------------------------------------------------------------------------------------------------- 'VPGFields --------- Permintaan bidang yang akan ditampilkan di halaman 'vPgSize-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'vcurrpg --------------------------------------------------------------------------------------------------------------- 'Vconditions ---- Kondisi paging kueri 'Vorderby ------------- Penyortiran halaman kueri '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Private Conn, Strsql, VTBNAME, VPKEY, VPGFIELDS, VPGSIZE, VCURRPG, VCONDITIONS, VORDERBY 'Inisialisasi kelas private sub class_initialize () 'Ketika itu adalah database MS SQL, atur dua variabel berikut Nama 'Dim Dbserver' atau alamat IP dari server database Nama basis data 'redup dbname' redup dbpath 'jika itu adalah database akses, atur jalurnya di sini redup dbuser 'nama pengguna login dari database kata sandi login domain dbpass ' Connstr dbpath = /testasp/data/data.mdb 'Atur jalur database dbuser = admin dbpass = 123456 'Jika akses, dan memiliki kata sandi connstr = provider = microsoft.jet.oledb.4.0; Sumber data = & server.mappath (dbpath) & _ ; ID Pengguna = & DBUSER &; Kata Sandi =; JET OLEDB: Kata Sandi Database = & DBPass 'Jika itu akses dan tidak ada kata sandi 'connstr = provider = microsoft.jet.oledb.4.0; Sumber data = & server.mappath (dbpath) 'Jika itu adalah database MS-SQL 'connstr = penyedia = sqloledb; ID Pengguna = & DBUSER &; Kata sandi = & dbpass & _ '; Katalog Awal = & DBName &; Sumber Data = & DBServer pada kesalahan resume berikutnya Set Conn = Server.CreateObject (AdodB.Connection) Conn.open Connstr errmsg terhubung ke database Akhir sub 'Kelas Akhir Private Sub Class_Terminate () Conn.Close atur conn = tidak ada Akhir sub '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Tetapkan nilai untuk variabel kelas '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Tetapkan pernyataan SQL Properti Publik Biarkan SQLSTR (Nilai ByVal) strsql = nilai Akhir properti 'Atur nama tabel halaman kueri Properti Publik Biarkan TBName (Nilai ByVal) vtbname = nilai Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Atur kunci utama dari tabel pagar kueri Properti Publik Biarkan PKey (Nilai Byval) VPKEY = Nilai Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Atur bidang yang ditampilkan Properti Publik Biarkan PGFields (Nilai ByVal) VPGFields = Nilai Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Atur jumlah catatan yang ditampilkan per halaman Properti Publik Biarkan PGSize (Nilai Byval) VPGSize = Nilai Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Tetapkan jumlah halaman yang saat ini ditampilkan Properti Publik Biarkan Currpg (Nilai ByVal) vcurrpg = nilai Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Atur kondisi kueri Kondisi Let Properti Publik (Nilai Byval) Jika len (nilai)> 0 lalu vconditions = di mana & nilai kalau tidak vconditions = di mana 1 = 1 akhiri jika Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Atur jenis pertanyaan Properti Publik Let Orderby (Nilai Byval) Jika len (nilai)> 0 lalu vorderby = order by & values kalau tidak vorderby = nilai akhiri jika Akhir properti '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Dapatkan jumlah total catatan Properti Publik Dapatkan VrScount () Jika vcurrpg = 1 lalu sqlc = pilih count (& vpkey &) sebagai iDcount dari & vtbname & & vconditions Set RSC = Server.CreateObject (ADODB.Recordset) rsc.open sqlc, conn, 0,1 Rsnum = rsc (idcount) rsc.close Setel rsc = tidak ada Jika rsnum> 0 lalu response.cookies (irecord) = rsnum vrscount = rsnum kalau tidak vrscount = 0 akhiri jika kalau tidak vrscount = request.cookies (irecord) akhiri jika Akhir properti 'Dapatkan jumlah total halaman Properti Publik Dapatkan VPGCount () irscount2 = vrscount () Jika irscount2 mod vpgsize = 0 lalu vpgcount = int (irscount2/vpgsize) kalau tidak vpgcount = int (irscount2/vpgsize) 1 akhiri jika Akhir properti 'Permintaan database Fungsi publik rsdb () pada kesalahan resume berikutnya 'Hasil kueri sederhana 'Atur rsdb = server.CreateObject (adodb.recordset) 'rsdb.open strsql, conn, 1,3 Set RSDB = Conn.Execute (Strsql) database kueri errmsg Fungsi akhir 'Tambah, perbarui, hapus catatan database function publik updb () pada kesalahan resume berikutnya Conn.execute (strsql) ERRMSG Edit Catatan Basis Data fungsi akhir '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Fungsi set rekaman yang digunakan untuk mengimplementasikan paging pagers fungsi publik () pada kesalahan resume berikutnya startrs redup startrs = (vcurrpg-1)*vpgsize '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Jika Anda menggunakan pernyataan ini, Anda perlu memodifikasi kode sesuai dengan parameter. Secara khusus, jika jenisnya adalah ASC, maka <ubah ke>, dan min diubah menjadi maks 'Jika startrs = 0 lalu 'strsql = Pilih Top & VPGSize & & VPGFields & From & VtbName & & Vconditions & & Vorderby ' kalau tidak 'strsql = Pilih Top & VPGSize & & VPGFields & From & VtbName & & Vconditions & dan & VPKey & < 'strsql = strsql & (pilih min (& vpkey &) dari (pilih atas & startrs & & vpkey & dari 'strsql = strsql & vtbname & & vconditions & & vorderby &) sebagai idtable) & vorderby 'Akhiri jika '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Jika startrs = 0 lalu strsql = Pilih Top & VPGSize & & VPGFields & From & VtbName & & Vconditions & & Vorderby kalau tidak strsql = Pilih Top & VPGSize & & VPGFields & From & VTBName & & Vconditions & dan & VPKey & Tidak strsql = strsql & in (pilih atas & startrs & & vpkey & dari & vtbname & & vconditions & & vorderby strsql = strsql &) & vorderby akhiri jika '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Setel pagers = server.CreateObject (adodb.recordset) pagers.open strsql, conn, 0,1 Pagination Rekam ERRMSG fungsi akhir '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- fungsi publik sqlpage () pada kesalahan resume berikutnya Setel sqlpage = server.createObject (adodb.recordset) Set CM = Server.CreateObject (AdodB.Command) CM.CommandType = 4 CM.ActiveConnection = Conn CM.CommandText = sp_util_page Cm.parameters (1) = VPGFields Cm.parameters (2) = vtbname Cm.parameters (3) = vconditions Cm.parameter (4) = vorderby Cm.parameters (5) = VPKEY Cm.parameters (6) = vcurrpg Cm.parameters (7) = VPGSize Cm.parameters (8) = vrscount () Cm.parameters (9) = sqlpage.cursorlocation = 3 sqlpage.lockType = 1 sqlpage.open cm Pagination Rekam ERRMSG fungsi akhir '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Tutup rekor yang ditetapkan objrs '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Fungsi Publik CRS (BYVAL OBJRS) Objrs.close () Atur objrs = tidak ada Fungsi akhir '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- fungsi publik pagenav () irscount = vrscount () 'jumlah total catatan mypage = vcurrpg'currpg'currpg'current page count Pgcount = vpgcount () 'jumlah halaman prepage = mypage-1 Jika prepage <1 maka prepage = 1 akhiri jika nextPage = mypage 1 Jika NextPage> PGCount maka nextPage = pgcount akhiri jika pagestr = <div id = fy> <span id = rpc> ada total & irscount & catatan & mypage &/& pgcount & </span> pagestr = pagestr & <a href = '? Currpage = 1' class = 'aw'> home </a> <a href = '? Currpage = & prepage &' class = 'aw'> halaman sebelumnya </a> if (mypage-1) mod 4 = 0 lalu FirstPage = MyPage elseif int ((mypage-1)/4) = 0 lalu FirstPage = 1 kalau tidak firstPage = int ((mypage-1)/4)*4 1 akhiri jika Endpage = FirstPage 4 astr = untuk i = halaman pertama untuk mengakhiri astr = astr & <a href = '? Currpage = & i &' jika cstr (mypage) = cstr (i) lalu astr = astr & id = 'Currp' akhiri jika astr = astr &> & i & </a> Jika saya> pgcount-1 maka keluar untuk Berikutnya astr = astr & <a href = '? Currpage = & nextpage &' class = 'aw'> halaman terakhir </a> <a href = '? Currpage = & pgcount &' class = 'aw'> halaman terakhir </a> </div> pagestr = pagestr & astr pagenav = pagestr fungsi akhir Tabel output dengan fungsi paging Fungsi showtb (byval tbtil) Setel rstb = pagers () 'Jika itu adalah prosedur tersimpan, hubungi sqlpage () tbrs = rstb.getrows () CRS (RSTB) itblrow = ubound (tbrs, 2) ITBLCOL = Ubound (TBTIL) tbstr = <tabel border = '0' cellPacing = '0' cellPadding = '0' cellPadding = '0'> <TBody> untuk r1 = 0 ke ITBLCOL tr1 = tr1 & <td width = '& split (tbtil (r1), |) (1) &'> & split (tbtil (r1), |) (0) & </td> Berikutnya tr1 = <tr> & tr1 & </tr> untuk ri = 0 ke itblrow untuk CI = 0 ke ITBLCOL td = td & <td width = '& split (tbtil (ci), |) (1) &'> & tbrs (ci, ri) & </td> Berikutnya tr = tr & <tr> & td & </tr> TD = NULL Berikutnya TBTIL = NULL TBRS = NULL Response.Write (TBSTR & TR1 & TR & <TR> <TD COLSPAN = '& ITBLCOL 1 &'> & pagenav () & </td> </tr> </tbody> </able>) TBSTR = NULL TR1 = NULL TR = NULL Fungsi akhir 'Cetak pernyataan SQL sehingga pernyataan itu akan memeriksa apakah ada kesalahan Sub prnsql publik () response.write (strsql) Akhir sub '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Fungsi toleran kesalahan '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Fungsi Pribadi ERRMSG (ERRMSG) Jika err.number <> 0 lalu 'Jika ada masalah, Anda dapat menggunakan kode di sini untuk mencetak informasi deskripsi untuk debugging yang mudah. Komentar keluar response.write (cstr (err.description) & <br>) Err.clear Response.write <font color = '#ff0000'> & errmsg & error </font> 'komentar Response.end () Akhiri jika Fungsi akhir '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Fungsi toleransi kesalahan berakhir '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Kelas akhir %> |
Bagikan: Kode Sampel FileSystemObject Dalam kode sampel yang dijelaskan di bagian ini, contoh kehidupan nyata disediakan untuk menggambarkan banyak fitur yang tersedia dalam pola objek FilesystemObject. Kode ini menunjukkan semua fitur cara menggunakan pola objek bersama -sama, dan cara menggunakannya secara efektif dalam kode Anda sendiri