แชร์รหัสการเขียนโปรแกรม ASP ที่ใช้กันทั่วไปกันเถอะ:
1. วิธีตัดสินเส้นทางทางกายภาพเสมือนจริงของเว็บไซต์ของคุณด้วย ASP
คำตอบ: ใช้วิธีการ Mappath: < % = server.mappath (/) %>
2. ฉันจะรู้ได้อย่างไรว่าเบราว์เซอร์ใช้โดยผู้ใช้?
คำตอบ: ใช้วิธีการวัตถุคำขอ:
-
strBrowser = request.serverVariables (http_user_agent)
ถ้า instr (strbrowser, msie) <> 0 แล้ว
Response.redirect (formsieonly.htm)
อื่น
Response.redirect (fact.htm)
สิ้นสุดถ้า
-
3. วิธีการคำนวณจำนวนเฉลี่ยต่อวันของการเยี่ยมชมซ้ำ
คำตอบ: วิธีแก้ปัญหา
< % startDate = D ตอนนี้ 01/01/1990)
ถ้า strdate <0 thesttartdate = startdate*-1
avgvpd = int (ใช้)/startdate) %>
แสดงผล
< % response.write (avgvpd) %>
นั่นคือหน้านี้เบ็นดูตั้งแต่วันที่ 10,1998 พฤศจิกายน
4. วิธีแสดงภาพสุ่ม
< % Dim P, PPIC, DPIC
PPIC = 12
สุ่ม
p = int ((ppic*rnd) +1)
DPIC = graphix/randompics/& p & .gif
-
แสดง
<img src = < % = dpic % >>
5. วิธีกลับไปที่หน้าก่อนหน้า
คำตอบ: <a href = < % = request.ServerVariables (http_referr) % >> preivous page </a>
หรือใช้รูปภาพเช่น: <img src = arrowback.gif action = "http://www.jzxue.com/wangzhankaifa/asp/201106/mynextpage.asp" method = "post">
< % สำหรับแต่ละรายการในคำขอฟอร์ %>
<อินพุต namee = < % = item %> type = hidden
value = < % = server.htmlencode (request.form (it)) % >>>
< % ถัดไป %>
</form>
10. ทำไมฉันถึงใช้ msgbox ในโปรแกรม ASP โปรแกรมผิดและบอกว่าไม่มีสิทธิ์
คำตอบ: เนื่องจาก ASP ทำงานโดยเซิร์ฟเวอร์หากคุณสามารถแสดงกล่องโต้ตอบในเซิร์ฟเวอร์ได้คุณต้องรอให้ใครบางคนกด OK เพื่อดำเนินการต่อและเซิร์ฟเวอร์ทั่วไปจะไม่ได้รับการปกป้องดังนั้น Microsoft จึงต้องห้าม สิ่งนี้จากฟังก์ชั่นนี้และบอกคุณ (ฮ่าฮ่า) โดยไม่มีอำนาจ แต่การเชื่อมโยงสคริปต์และไคลเอนต์สามารถแสดงกล่องโต้ตอบดังต่อไปนี้:
<%yourVar = กล่องโต้ตอบทดสอบ%>
ฝนตก
11. มีวิธีใดในการปกป้องซอร์สโค้ดของคุณและไม่เห็นผู้คน
คำตอบ: คุณสามารถดาวน์โหลดตัวเข้ารหัสสคริปต์ Microsoft Windows ซึ่งสามารถเข้ารหัสสคริปต์ ASP และสคริปต์ JavaScript/VBScript ไคลเอนต์ แก่นแท้ แก่นแท้ อย่างไรก็ตามหลังจากที่ไคลเอนต์ถูกเข้ารหัสเฉพาะ IE5 เท่านั้นที่สามารถดำเนินการได้
12. ฉันจะส่งสตริงแบบสอบถามจากไฟล์ ASP หนึ่งไปยังอีกไฟล์หนึ่งได้อย่างไร
คำตอบ: ไฟล์เดิมถูกเพิ่ม: Response.redirect (second.asp? & request.serverVariables (query_string))
13. global.asa ไฟล์ไม่ทำงานเสมอ?
คำตอบ: มีการตั้งค่าเฉพาะเว็บไดเรกทอรีเป็นเว็บแอปพลิเคชัน Global.asa มีประสิทธิภาพและ global.asa มีประสิทธิภาพภายใต้ไดเรกทอรีรูทของเว็บแอปพลิเคชัน IIS4 สามารถใช้ Internet Service Manager เพื่อตั้งค่าการตั้งค่าแอปพลิเคชันวิธีทำให้ไฟล์ HTM ดำเนินการรหัสสคริปต์เช่นไฟล์ ASP ได้หรือไม่
14. ไฟล์ HTM สามารถเรียกใช้รหัสสคริปต์เช่นไฟล์ ASP ได้อย่างไร
คำตอบ: Internet Sevices Manager-> เลือกเว็บไซต์เริ่มต้น-> ปุ่มหนูขวา-> เมนูแอตทริบิวต์-> ไดเรกทอรีหลัก-> การตั้งค่าแอปพลิเคชัน-> คลิกปุ่มกำหนดค่า-> การแม็พแอพ-> คลิกปุ่ม add-> เรียกใช้เรียกดู winnt/system32/inetSrv/asp.dll ส่วนขยายป้อนการยกเว้นวิธีการ HTM และอินพุต put.delete อย่างไรก็ตามเป็นที่น่าสังเกตว่าสิ่งนี้ถูกประมวลผลโดย ASP.DLL สำหรับ HTM และประสิทธิภาพจะลดลง
15. วิธีลงทะเบียนส่วนประกอบ
คำตอบ: มีสองวิธี
วิธีแรก: การลงทะเบียนด้วยตนเอง DLL ใช้จาก IIS 3.0 ถึง IIS 4.0 และเว็บเซิร์ฟเวอร์อื่น ๆ คุณต้องดำเนินการในบรรทัดคำสั่งป้อนไดเรกทอรีที่มี DLL และป้อน: regsvr32 component_name.dll เช่น c:/temp/regsvr32 aspemail.dll มันจะลงทะเบียนข้อมูลเฉพาะของ DLL ไปยังรีจิสทรี DLL Essence จากนั้นส่วนประกอบนี้สามารถใช้บนเซิร์ฟเวอร์ได้ แต่วิธีนี้มีข้อบกพร่อง เมื่อส่วนประกอบเสร็จสมบูรณ์โดยใช้วิธีนี้ส่วนประกอบจะต้องตั้งค่าบัญชี NT ที่ไม่ระบุชื่อด้วยสิทธิ์ในการเรียกใช้ DLL นี้ โดยเฉพาะอย่างยิ่งส่วนประกอบบางอย่างจำเป็นต้องอ่านรีจิสทรีดังนั้นวิธีการของส่วนประกอบที่ลงทะเบียนนี้คือการใช้ DLL ของการลงทะเบียนที่ลงทะเบียนโดยไม่มี MTS บนเซิร์ฟเวอร์
วิธีที่สอง: MTS (Microsoft Transaction Server) MTS เป็นคุณสมบัติใหม่ของ IIS 4 แต่ให้การปรับปรุงอย่างมาก MTS ช่วยให้คุณระบุว่ามีเพียงผู้ใช้ที่มีสิทธิ์เท่านั้นที่สามารถเข้าถึงส่วนประกอบซึ่งปรับปรุงการตั้งค่าความปลอดภัยบนเซิร์ฟเวอร์เว็บไซต์ได้อย่างมาก ขั้นตอนของการลงทะเบียนส่วนประกอบบน MTS มีดังนี้:
1) เปิดคอนโซลการจัดการ IIS
2) ขยายเซิร์ฟเวอร์ธุรกรรมขวา -Click PKGs ติดตั้งและเลือกแพ็คเกจใหม่
3) คลิกสร้างแพ็คเกจที่ว่างเปล่า
4) ตั้งชื่อแพ็คเกจ
5) ระบุบัญชีผู้ดูแลระบบหรือใช้อินเทอร์เน็ต (หากเซิร์ฟเวอร์มักเข้าสู่ระบบด้วยผู้ดูแลระบบ)
6) ตอนนี้ใช้อย่างถูกต้อง -คลิกส่วนประกอบหลังจากแพ็คเกจที่คุณเพิ่งสร้างขึ้น เลือกส่วนประกอบใหม่จากนั้น
7) เลือกติดตั้งส่วนประกอบใหม่
ค้นหาไฟล์. dll ของคุณและเลือกถัดไปเพื่อให้เสร็จสมบูรณ์
ในการลบวัตถุนี้เพียงเลือกไอคอนและเลือกลบ
หมายเหตุ: โดยเฉพาะอย่างยิ่งให้ความสนใจกับวิธีที่สอง
16. การเชื่อมต่อฐานข้อมูล ASP และการเข้าถึง:
<%@ language = vbscript%>
-
Dim Conn, mdbfile
mdbfile = server.mappath (ชื่อฐานข้อมูล. mdb)
SET Conn = Server.CreateObject (ADODB.Connection)
ไดรเวอร์ conn.open = {Microsoft Access Driver (*.mdb)};
-
17. การเชื่อมต่อฐานข้อมูล ASP และ SQL:
<%@ language = vbscript%>
-
หรี่
SET Conn = Server.CreateObject (ADODB.Connection)
Con.open Provider = SQLoledB;
-
สร้างวัตถุชุดบันทึก:
-
ตั้งค่า rs = server.createObject (adodb.oldset)
คำสั่ง Rs.oopen SQL, Conn, 3,2
-
18. SQL คำสั่งที่ใช้กันทั่วไปที่จะใช้:
(1) การคัดกรองการบันทึกข้อมูล:
SQL = SELECT * จากตารางข้อมูลที่ชื่อฟิลด์ = ลำดับฟิลด์สั่งซื้อตามชื่อฟิลด์ [DESC]
SQL = SELECT * จากตารางข้อมูลที่ชื่อฟิลด์คือ LIVE '%ค่าฟิลด์ค่า%' คำสั่งซื้อตามชื่อฟิลด์ [DESC]
SQL = เลือก TOP 10 * จากตารางข้อมูลที่มีการสั่งชื่อฟิลด์ตามชื่อฟิลด์ [DESC]
SQL = เลือก * จากตารางข้อมูลที่ชื่อฟิลด์ใน ('ค่า 1', 'ค่า 2', 'ค่า 3')
SQL = เลือก * จากตารางข้อมูลที่ชื่อฟิลด์ระหว่างค่า 1 และค่า 2
(2) อัปเดตข้อมูลข้อมูล:
SQL = อัปเดตตารางข้อมูลชุดชื่อฟิลด์ = ค่าฟิลด์ที่นิพจน์เงื่อนไข
SQL = อัปเดตฟิลด์ชุดข้อมูลตาราง 1 = ค่า 1, ฟิลด์ 2 = ค่า 2 ... ฟิลด์ฟิลด์ n = ค่านิพจน์เงื่อนไขค่า
(3) ลบข้อมูลข้อมูล:
SQL = ลบจากตารางข้อมูลที่นิพจน์เงื่อนไข
SQL = ลบจากตารางข้อมูล (ลบบันทึกทั้งหมดของตารางข้อมูล)
(4) เพิ่มบันทึกข้อมูล:
SQL = แทรกลงในตารางข้อมูล (ฟิลด์ 1, ฟิลด์ 2, ฟิลด์ 3 ... ) Valuess (ค่า 1, ค่า 2, ค่า 3 ... )
SQL = แทรกลงในตารางข้อมูลเป้าหมายเลือก * จากตารางข้อมูลต้นฉบับ (เพิ่มบันทึกของตารางข้อมูลต้นฉบับลงในตารางข้อมูลเป้าหมาย)
(5) ฟังก์ชั่นสถิติการบันทึกข้อมูล:
AVG (ชื่อฟิลด์) ได้รับค่าเฉลี่ยของแถบตาราง
นับ (*| ชื่อฟิลด์) สถิติเกี่ยวกับจำนวนแถวข้อมูลหรือสถิติเกี่ยวกับจำนวนแถวข้อมูลที่มีค่าในคอลัมน์
สูงสุด (ชื่อฟิลด์) รับค่าสูงสุดของแถบตาราง
ขั้นต่ำ (ชื่อฟิลด์) รับค่าต่ำสุดของแถบตาราง
ผลรวม (ชื่อฟิลด์) เพิ่มค่าของแถบข้อมูล
อ้างถึงวิธีการของฟังก์ชั่นข้างต้น:
SQL = เลือกผลรวม (ชื่อฟิลด์) เป็นนามแฝงจากตารางข้อมูลที่นิพจน์เงื่อนไข
ตั้งค่า rs = const.excute (SQL)
ใช้ RS (นามแฝง) เพื่อให้ได้ค่าของเครื่องแบบและฟังก์ชั่นอื่น ๆ ที่ใช้ด้านบน
(5) การจัดตั้งและการลบตารางข้อมูล:
สร้างชื่อตารางข้อมูลตาราง (ฟิลด์ 1 ประเภท 1 (ความยาว), ฟิลด์ 2 ประเภท 2 (ความยาว) ... )
ตัวอย่าง: สร้าง Table Tab01 (ชื่อ Varchar (50), DateTime Default ตอนนี้ ()))
ชื่อตารางข้อมูลตารางข้อมูล (ถาวรลบตารางข้อมูล)
19. วิธีการบันทึกวัตถุชุด:
Rs.Movenext จะเปลี่ยนตัวชี้บันทึกจากตำแหน่งปัจจุบัน
Rs.MovePrevious จะบันทึกตัวชี้จากตำแหน่งปัจจุบันขึ้น
Rs.MoveFirst ย้ายตัวชี้บันทึกไปยังบรรทัดแรกของตารางข้อมูล
Rs.Movelast ย้ายตัวชี้บันทึกไปยังบรรทัดสุดท้ายของตารางข้อมูล
rs.absoluteposition = n เพื่อย้ายตัวชี้บันทึกไปยังตารางข้อมูล n line n n
Rs.absolutePage = N จะย้ายตัวชี้บันทึกไปยังบรรทัดแรกของหน้า NN
rs.pagesize = n การตั้งค่าแต่ละหน้าคือ n ระเบียน n
Rs.pagecount ส่งคืนหมายเลขหน้าทั้งหมดตามการตั้งค่าของหน้าเว็บ
Rs.RecordCount กลับมาเป็นจำนวนระเบียนทั้งหมด
Rs.bof ส่งคืนตัวชี้บันทึกนอกเหนือจากหัวของตารางข้อมูลจริงพูดว่า False เป็นว่า
RS.EOF ส่งคืนตัวชี้บันทึกเกินกว่าจุดสิ้นสุดของตารางข้อมูล True กล่าวว่า False เป็นว่า
Rs.Delete ลบระเบียนปัจจุบัน แต่ตัวชี้บันทึกจะไม่เลื่อนลง
Rs.AddNew เพิ่มการบันทึกที่ส่วนท้ายของตารางข้อมูล
Rs.Update Update Data Table Table
วิธีการวัตถุ 20 รายการ
วิธีเปิด
recordSet.Open แหล่งที่มา, ActiveConnection, Cursortype, Locktype, Options
แหล่งที่มา
วัตถุ RecordSet สามารถเชื่อมต่อวัตถุคำสั่งผ่านแอตทริบิวต์ต้นทาง พารามิเตอร์แหล่งที่มาสามารถเป็นชื่อวัตถุคำสั่งส่วนของคำสั่ง SQL ชื่อตารางข้อมูลที่ระบุหรือขั้นตอนที่เก็บไว้ หากมีการละเว้นพารามิเตอร์นี้ระบบจะใช้แอตทริบิวต์แหล่งที่มาของวัตถุ RecordSet