การลิงก์ไปยังฐานข้อมูลเป็นขั้นตอนแรกในการพัฒนาโปรแกรมของเรา มาดูเคล็ดลับในการใช้เส้นทางฐานข้อมูลใน Dreamweaver กัน
1. ไม่แนะนำให้ใช้ Server.Mappath (ไฟล์ฐานข้อมูลที่มีที่อยู่พาธเอกสารสัมพันธ์)
แม้ว่าจะมีความสามารถในการพกพาแพลตฟอร์ม แต่ไม่สามารถรับประกันความถูกต้องของพาธฐานข้อมูลได้อย่างสมบูรณ์สำหรับไฟล์ที่อ้างอิงฐานข้อมูลในระดับที่แตกต่างกันและที่ความลึกต่างกัน .
ตัวอย่างเช่น:
1. ไฟล์ฐานข้อมูล cnbruce.mdb อยู่ในโฟลเดอร์ฐานข้อมูล (เข้าถึงได้ผ่าน http)
2. ไฟล์ฐานข้อมูลการเชื่อมต่อ conn.asp ที่สร้างโดยอัตโนมัติโดย DW จะอยู่ในโฟลเดอร์ Connections
3. หากทดสอบเส้นทางการเชื่อมต่อสำเร็จ ใน DW นั้น จะต้องป้อนที่อยู่เป็น Server.Mappath("../database/cnbruce.mdb")
แต่ไฟล์ที่อ้างอิงถึงการเชื่อมต่อฐานข้อมูลในเวลาต่อมาจะต้องบันทึกไว้ในโฟลเดอร์ที่เหมือนกับฐานข้อมูลนั่นคือ
:
- ฐานข้อมูล
- cnbruce เฉพาะโครงสร้างของ mdb
- การเชื่อมต่อ
- conn.asp
- บางโฟลเดอร์
- x1.asp
สามารถใช้งานได้ตามปกติ แต่สิ่งนี้กำหนดให้ไฟล์ทั้งหมดในไซต์ที่อ้างอิงไฟล์ฐานข้อมูลการเชื่อมต่อจะต้องถูกเก็บไว้ในไดเรกทอรีระดับแรกของไซต์ แน่นอนว่าสิ่งนี้ไม่สมเหตุสมผล เช่น โครงสร้างดังกล่าว
- x2.asp
- ฐานข้อมูล
- cnbruce.mdb
- การเชื่อมต่อ
- conn.asp
- โฟลเดอร์บางโฟลเดอร์
- โฟลเดอร์ย่อยบางโฟลเดอร์
- x3.asp
ดังนั้นทั้ง x2.asp และ x3.asp จะไม่สามารถแสดงได้ตามปกติ
การวิเคราะห์หลัก: ไม่ว่า conn.asp จะถูกวางไว้ที่ใด ไม่ว่าเนื้อหาของ conn.asp จะเป็นอย่างไร สุดท้ายแล้วจะขึ้นอยู่กับตำแหน่งไฟล์ของไฟล์ที่อ้างอิงถึง conn.asp และความสัมพันธ์ของตำแหน่งของฐานข้อมูล
วิธีแก้ไข: กำหนดเส้นทางปัจจุบันใน conn.asp และกำหนดเส้นทางลิงก์ที่แตกต่างกันตามค่าระดับที่แตกต่างกัน... นี่เป็นเรื่องยากสำหรับผู้เริ่มต้น
2. ไม่แนะนำให้ใช้ Server.Mappath (ไฟล์ฐานข้อมูลที่มีเส้นทางไดเร็กทอรีรูทแบบสัมพันธ์)
หากต้องการใช้วิธีนี้ คุณต้องปรับไซต์เริ่มต้นของ IIS เป็นโฟลเดอร์ที่มีไซต์ DW ปัจจุบันอยู่ (ระบบ XP) หรือสร้างไซต์ที่ชี้ไปที่โฟลเดอร์ ( 2K และระบบอื่น ๆ )
อย่างไรก็ตาม ในหนึ่งประโยค เมื่อคุณป้อน http://localhost/ เนื้อหาที่แสดงจะไม่ใช่หน้าแรกของ IIS เริ่มต้นอีกต่อไป แต่เป็นเอกสารหน้าแรกเริ่มต้นในโฟลเดอร์ไซต์ DW ที่คุณตั้งค่าไว้
จากนั้นหลังจากตั้งค่าไซต์ IIS
1. ไฟล์ฐานข้อมูล cnbruce.mdb อยู่ในโฟลเดอร์ฐานข้อมูล (เข้าถึงได้ผ่าน http)
2. ไฟล์ฐานข้อมูลการเชื่อมต่อ conn.asp ที่สร้างโดยอัตโนมัติโดย DW จะอยู่ในโฟลเดอร์การเชื่อมต่อ
3. หากการเชื่อมต่อ ได้รับการทดสอบใน DW ถ้าเส้นทางสำเร็จ ที่อยู่อินพุตคือ Server.Mappath("/database/cnbruce.mdb")
/database/cnbruce.mdb วิธีการนี้จะสัมพันธ์กับไดเร็กทอรีราก และได้รับเส้นทางฐานข้อมูลจากเซิร์ฟเวอร์ระดับสูง มุมมองระดับไม่ว่าจะอยู่ภายใต้ระดับหรือไดเรกทอรีใดเอกสารไซต์ทั้งหมดสามารถแสดงได้ตามปกติ
แต่ยังไม่แนะนำ เหตุผลมีดังนี้
คุณสามารถแก้ไขไซต์ IIS ในเครื่องได้ แต่เมื่ออัปโหลดไปยังเซิร์ฟเวอร์หรือโฮสต์เสมือน ปัญหาก็เริ่มต้นขึ้น
1. หากเทคโนโลยีของผู้ให้บริการโฮสต์เสมือนของคุณไม่ดีพอ เมื่อแยกวิเคราะห์ไดเร็กทอรีรากของเว็บไซต์ของคุณ จะไม่ชี้ไปที่โฟลเดอร์ไซต์ของคุณ แต่จะชี้ไปที่โฟลเดอร์ wwwroot ใต้ดิสก์ระบบเซิร์ฟเวอร์ ดังนั้นเส้นทางจึงต้องผิด
2. หากสิ่งที่คุณต้องการอัปโหลดไม่ใช่ไดเร็กทอรีรากของไซต์ของคุณ แน่นอนว่าจะมีข้อผิดพลาดในการแยกวิเคราะห์ในเส้นทางอย่างแน่นอน
ดังนั้นจึงไม่แนะนำ ! แล้วเราควรทำอย่างไร
3. ขอแนะนำให้ใช้ Server.Mappath (ไฟล์ฐานข้อมูลเส้นทางทางกายภาพภายในเครื่อง)
ง่ายมาก ที่อยู่เส้นทางทางกายภาพแบบสัมบูรณ์จะถูกใช้โดยตรงเมื่อสร้างใน DW
ตกลง มาอัปโหลดกัน แน่นอนว่าไม่ใช่เรื่องบังเอิญดังกล่าว: ที่อยู่เส้นทางทางกายภาพของฐานข้อมูลที่อัปโหลดไปยังเซิร์ฟเวอร์เหมือนกับที่อยู่เส้นทางทางกายภาพของฐานข้อมูลในเครื่อง
ดังนั้น ตอนนี้คุณเพียงแค่ต้องได้รับที่อยู่ทางกายภาพของไฟล์ฐานข้อมูลเท่านั้น อัปโหลดไปยังพื้นที่เซิร์ฟเวอร์บนเซิร์ฟเวอร์
ได้มาอย่างไร
1. สร้างไฟล์ path.asp ที่มีเนื้อหาเรียบง่ายมาก
2. ไฟล์นี้และไฟล์ฐานข้อมูล cnbruce.mdb อยู่ในโฟลเดอร์เดียวกันและอัปโหลดพร้อมกันเป็นกลุ่ม
3. ดู path.asp ในแถบที่อยู่ URL รับที่อยู่ทางกายภาพของ cnbruce.mdb บนเซิร์ฟเวอร์ และคัดลอกเส้นทาง
4. แทนที่เส้นทางทางกายภาพใน conn.asp ภายในเครื่องแล้วอัปโหลด ทุกอย่างเรียบร้อยดี
คุณสมบัติ:
1. แม้ว่าการโยกย้ายแพลตฟอร์มจะไม่แข็งแกร่งมากนัก แต่ก็รองรับการเชื่อมต่อไฟล์ในทุกไซต์อย่างสมบูรณ์ และนั่นคือการโยกย้ายระหว่างท้องถิ่นและเซิร์ฟเวอร์
2. ป้องกันไม่ให้ %5c รับที่อยู่ฐานข้อมูลทางอ้อมโดยการใช้ประโยชน์จากฐานข้อมูล
3. ปัจจุบันนี้ มีพื้นที่มากขึ้นเรื่อยๆ แนะนำให้วางไฟล์ฐานข้อมูลในไดเร็กทอรีที่ไม่ใช่การเข้าถึงเว็บ (แน่นอนว่าการได้รับเส้นทางเฉพาะเป็นอีกวิธีหนึ่ง) ซึ่งกำหนดให้ผู้ใช้ต้องใช้เส้นทางทางกายภาพ
ดังนั้น มุมมองของฉันคือ:
วิธีใช้เส้นทางฐานข้อมูลการสร้างเว็บไซต์ไดนามิก Dreamweaver MX: ใช้ที่อยู่จริงในเครื่อง และยังคงใช้ที่อยู่จริงเมื่ออัปโหลดไปยังเซิร์ฟเวอร์