แนะนำ: วิธีใช้โปรแกรม ASP เพื่ออ่านการจัดอันดับ Alexa World ของเว็บไซต์ เมื่อใดก็ตามที่การจัดอันดับ Alexa ได้รับการอัปเดตฉันต้องจัดเรียงการจัดอันดับของเว็บไซต์ที่คล้ายกันทั้งหมดที่เกี่ยวข้องทั้งหมดและดูการอัปเดตการจัดอันดับของเว็บไซต์คู่แข่งเหล่านี้ ฉันทำมากขึ้นและฉันรู้สึกรำคาญ แม้ว่าฉันจะมีเว็บไซต์มากกว่า 30 เว็บไซต์ แต่ฉันก็รู้สึกเหนื่อยเล็กน้อยหลังจากดูพวกเขาทีละคน ดังนั้นฉันต้องการ
วิธีหนึ่งในการใช้ Excel ใน ASP คือการเชื่อมโยงไฟล์ Excel เป็นฐานข้อมูลและการดำเนินการคล้ายกับการดำเนินการฐานข้อมูลการเข้าถึง แต่วิธีนี้ไม่ได้มีประโยชน์เสมอไปควรเป็นไปได้ว่า Excel ไม่ใช่ฐานข้อมูลเชิงสัมพันธ์ สำหรับรูปแบบคงที่รูปแบบนี้มีการรวมเซลล์ที่ซับซ้อนรูปแบบเส้นขอบรูปแบบรูปแบบความสัมพันธ์ของสูตรระหว่างเซลล์ ฯลฯ ฉันคิดว่าสิ่งที่ง่ายที่สุดที่จะเข้าใจคือการเปิดไฟล์ที่มีเทมเพลตที่ตั้งไว้แล้วในพื้นหลังแล้วแทรกข้อมูลที่จำเป็นบันทึกและเอาท์พุท ...
วิธีการที่กล่าวถึงในที่นี้คือการสร้างวัตถุ Excel โดยตรงซึ่งสามารถดำเนินการต่าง ๆ บนเอกสาร Excel ได้อย่างสะดวกยิ่งขึ้นในพื้นหลัง
ฝั่งเซิร์ฟเวอร์ยังจำเป็นต้องตั้งค่าสิทธิ์การทำงานของส่วนประกอบ COM พิมพ์ DCOMCNFG บนบรรทัดคำสั่งและป้อนอินเตอร์เฟสการกำหนดค่าส่วนประกอบ Com เลือก Microsoft Excel และคลิกปุ่มคุณสมบัติ เลือกทั้งสามตัวเลือกเดียวเพื่อปรับแต่ง เพิ่มทุกคนในการอนุญาตทั้งหมดในระหว่างการแก้ไข รีสตาร์ทเซิร์ฟเวอร์หลังจากบันทึก
มันสำคัญมาก หากคุณไม่ได้ตั้งค่าคอมพิวเตอร์เครื่องอื่นจะไม่สามารถสร้างวัตถุ Excel ให้เสร็จสมบูรณ์ได้
อย่างไรก็ตามวิธีนี้ยังมีข้อเสียเปรียบ ในการดำเนินการจริงของฉันหากมีไฟล์ Open Excel บนเซิร์ฟเวอร์และไฟล์เดียวกันจะถูกเรียกใช้งานข้อผิดพลาดจะเกิดขึ้น ฉันยังไม่เข้าใจว่าทำไม อาจมีบางสถานที่ที่ไม่ได้ตั้งค่าอย่างถูกต้อง
นอกจากนี้รูปแบบรหัสตัวอย่างในบทความที่ยกมาข้างต้นยังไม่สมบูรณ์และการแบ่งบรรทัดและช่องว่างจำนวนมากไม่ถูกต้อง หากรหัสเสร็จสมบูรณ์เพียงคัดลอกรหัสและเรียกใช้สำเร็จ จากนั้นทำการวิจัยอย่างช้าๆและปรับเปลี่ยนมันจะเริ่มต้นได้ง่าย ตอนนี้รหัสที่แก้ไขมีดังนี้ (ส่วนที่ถูกลบแผนภูมิ):
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - เมื่อเกิดข้อผิดพลาดต่อไป straddr = server.mappath (.) ตั้งค่า objexcelapp = createObject (excel.application) objexcelapp.displayalerts = false objexcelapp.application.visible = false objexcelapp.workbooks.open (straddr &/templet/null.xls) ตั้งค่า objexcelbook = objexcelapp.activeworkbook ตั้งค่า objexcelsheets = objexcelbook.worksheets ตั้งค่า objexcelsheet = objexcelbook.sheets (1) OBJEXCELSSHEET.Range (B2: K2) .Value = Array (Week1, Week2, Week3, Week4, Week5, Week6, Week6, Week7) Objexcelsheet.Range (B3: K3) .Value = Array (67,87,5,9,7,45,45,54,54,10) Objexcelsheet.Range (B4: K4) .Value = อาร์เรย์ (10,10,8,27,33,37,50,54,10,10) Objexcelsheet.Range (B5: K5) .Value = Array (23,3,86,64,60,18,5,1,1,36,80) objexcelsheet.cells (3,1) .Value = internetExPlorer objexcelsheet.cells (4,1) .Value = netScape objexcelsheet.cells (5,1) .Value = อื่น ๆ objexcelsheet.Range (B2: K5) .Select Saveas (straddr &/temp/excel.xls) objexcelapp.quit ตั้งค่า objexcelapp = ไม่มีอะไร - <! doctypehtmlpublic-// w3c // dtdhtml4.0transitional // en> <html> <head> <title> NewDocument </title> <metaname = generatorContent = MicrosoftFrontPage5.0> <metaname = utherContent => <metaname = keywordscontent => <metaname = descriptionContent => </head> <body> </body> </html> |
หลังจากใช้งานไฟล์ Excel คุณต้องส่งออกไฟล์ ในความเป็นจริงใช้การเปลี่ยนเส้นทางของ ASP ไปยังวิธี Excel บางครั้งมันถูกเปิดโดยตรงใน IE และบางครั้งมันเป็นการดาวน์โหลดแบบป๊อปอัพและเปิดหน้าต่างบันทึก หากคุณต้องการเปิดโดยตรงใน IE ให้ใช้ FSO เพื่อโหลดไฟล์ Excel แล้วส่งออกใน IE
ต่อไปนี้เป็นเนื้อหาที่ยกมา: - Dim FSO, Fileext, strfilepath, Mime strfilepath = f: /aspxuexi.doc ตั้งค่า fso = server.createObject (scripting.filesystemobject) fileext = fso.getextensionName (strfilePath) ตั้งค่า fso = ไม่มีอะไร เลือก case fileext เอกสารกรณี mime = application/msword กรณี XLS mime = application/msexcel สิ้นสุดเลือก การโทรออก (strfilepath, mime) - ฟังก์ชั่นเอาท์พุท (StrFilePath, MIME) Response.ContentType = MIME const adtypebinary = 1 ตั้งค่า objstream = server.createObject (adodb.stream) objstream.open objstream.type = adtypebinary objstream.loadfromfile strfilepath Response.binaryWrite objstream.read objstream.close ตั้งค่า objstream = ไม่มีอะไร ฟังก์ชันสิ้นสุด - - |
ในการใช้งานจริง เมื่อฝั่งเซิร์ฟเวอร์รันโปรแกรม Excel หรือการเข้าถึงไคลเอนต์จะส่งเพื่อสร้าง Excel วัตถุแอปพลิเคชันไม่สามารถประสบความสำเร็จได้ ในอีกกรณีหนึ่งเมื่อลูกค้ารายหนึ่งส่งคำขอและไม่สิ้นสุดคำขอที่ส่งโดยลูกค้ารายอื่นไม่สามารถทำได้เช่นกัน! อาจมีวิธีแก้ไขปัญหาอื่น ๆ สำหรับปัญหานี้ แต่อย่างน้อยก็ไม่เสถียร
มันเกิดขึ้นเช่นนั้นว่ามีตัวอย่างที่ประสบความสำเร็จที่เกี่ยวข้องในเครือข่ายภายในของแผนกของเรา ฉันขุดมันออกมาและพบว่ามันคือการสร้าง Excel บนลูกค้า แอปพลิเคชัน. ด้วยวิธีนี้จะไม่มีความขัดแย้งทางฝั่งเซิร์ฟเวอร์ สำหรับลูกค้าเนื่องจากพวกเขากำลังทำงานบน LAN ระดับความปลอดภัยของลูกค้าคือสามารถตั้งค่าให้ต่ำและอนุญาตให้ใช้งานที่เกี่ยวข้อง (นั่นคือสิ่งที่เกี่ยวข้องกับความปลอดภัยทุกชนิดถูกตั้งค่าให้อยู่ในตัวเลือกเครื่องมือ IE และรายการใดที่ไม่ได้ตรวจสอบ) แม้ว่าจะไม่ได้ตั้งค่าไว้เช่นจะปรากฏขึ้นหน้าต่างเตือน: มันได้รับอนุญาตให้เรียกใช้ ActiveX หรือไม่?
แชร์: วิธีการเข้าถึงหลายชื่อโดเมนในพื้นที่เว็บไซต์เดียว รหัส ASP ที่สามารถเปิดใช้งานการเข้าถึงชื่อหลายโดเมนในพื้นที่เว็บไซต์: ต่อไปนี้เป็นเนื้อหาอ้างอิง: %ถ้า request.ServerVariables (server_name) = & q
3 หน้ารวมหน้าก่อนหน้า 123 หน้าถัดไป