Seluruh situs hanya perlu menggunakan satu file koneksi database untuk mengimplementasikan kode fungsi. Saya tidak akan mengatakan apa-apa lagi, cukup persembahkan kode aslinya secara langsung.
Copy kode kodenya sebagai berikut:
'==========Perhatian======== =========
' 1. Nama folder tempat website berada tidak boleh root.
' 2. Nama folder tempat situs web berada. Pengulangan nama folder tidak diperbolehkan di jalur fisik. Misalnya, F:/t/t, t adalah nama folder tempat situs web berada dalam hal ini, kesalahan akan terjadi.
' ===== = ============
Redupkan dbPath,dbName,Db,ConnStr,WebSiteFolderName
pada kesalahan lanjutkan berikutnya
WebSiteFolderName=WeldSiteBuilder
dbPath = _sitedata/ 'Perhatikan bahwa ini adalah garis miring terbalik, dan hanya di bagian akhir
dbName = acteedata.mdb 'Nama basis data
Db=GetSitePhysicalPath(WebSiteFolderName) & dbPath & dbName
'response.Write(jalur fisik database saat ini: &server.mappath(db))
'respons.Tulis(<jam>)
'response.Write(Jalur halaman saat ini diminta: &request.ServerVariables(URL))
'respons.Tulis(<jam>)
'response.Write(jalur root situs saat ini: &request.ServerVariables(APPL_PHYSICAL_PATH))
'respons.Tulis(<jam>)
'response.Write(status jalur situs saat ini: &request.ServerVariables(APPL_MD_PATH))
'respons.Tulis(db)
'respons.Akhir()
'=======
Setel koneksi=Server.CreateObject(ADODB.Connection)
ConnStr=Penyedia=Microsoft.Jet.OLEDB.4.0;Sumber Data=&Db
Sambungan.Buka SambunganStr
Jika Salah Lalu
Err. Jelas
SetConn=Tidak ada
Respon.Tulis kesalahan koneksi database!
Respon.Akhir
Akhiri Jika
SubTutupConn()
samb.tutup
setel samb=tidak ada
akhir Sub
'Dapatkan jalur absolut ke direktori tempat situs web berada (dengan /tanda tangan)
Fungsi GetSitePhysicalPath (WSFN)
redupkan APPL_MD_PATH,APPL_MD_PATHArray,Path,WSPP
WSPP=request.ServerVariables(APPL_PHYSICAL_PATH)'Situs web default berjalan di direktori root
APPL_MD_PATH=permintaan.ServerVariables(APPL_MD_PATH)
APPL_MD_PATHArray=berpisah(APPL_MD_PATH,/)
Jalur=APPL_MD_PATHArray(UBound(APPL_MD_PATHArray))
jika UCase(Path)=ROOT maka 'Tentukan apakah situs web berjalan di bawah aplikasi independen
'Kemudian tentukan apakah website tersebut berjalan di folder tertentu
if InStr(WSPP,WSFN)=0 maka 'Situs web berjalan di folder di direktori root
'Ejakan alamat folder tempat situs web berada berdasarkan alamat halaman yang dikunjungi
redupkan CurrentUrl,NameArray
CurrentUrl=permintaan.ServerVariables(URL)
NameArray=split(Url Saat Ini,/)
untuk i=LBound(NameArray) ke UBound(NameArray)
jika UCase(NameArray(i))=UCase(WSFN) maka
untuk j=0 sampai saya
WSPP=WSPP+NamaArray(j)+/
Berikutnya
keluar untuk
berakhir jika
Berikutnya
else 'menunjukkan bahwa situs web berjalan di direktori root
'Tidak perlu melakukan apa pun, nilai pengembalian telah diinisialisasi
berakhir jika
else 'menunjukkan bahwa situs web berjalan di direktori virtual
'Jangan lakukan apa pun, nilai pengembalian telah diinisialisasi
berakhir jika
WSPP=ganti(WSPP,//,/)
DapatkanSitePhysicalPath=WSPP
Fungsi Akhir
PS: Hal di atas hanyalah solusi untuk masalah jalur penyertaan yang salah untuk database Access, sehingga situs dapat berbagi file koneksi database. Jika ada file yang memuatnya, database dapat dibuka secara normal, dan tidak perlu khawatir tentang bagaimana situs web berjalan (jalankan di direktori root, Jalankan di bawah jalur virtual, jalankan di bawah direktori root + direktori tempat situs web berada).