เพิ่มพลังอินเทอร์แอคทีฟ x 3 ให้เว็บเพจ ด้วย ASP

ผู้เขียน: สุรัตน์ บัณฑิตลักษณะ
ISBN: 974-88370-0-9
จำนวนหน้า: xxx หน้า
ขนาด: 14.5 x 21 ซม.
รูปแบบหนังสือ: หนังสือขาวดำ

ราคาปก: 245 บาท
ราคาสั่งซื้อ: 210 บาท
ส่งหน้านี้ให้เพื่อน  


  • รวบรวมพัฒนาการล่าสุดของ ASP พร้อมการประยุกต์ใช้งานเพิ่มเติมจากหนังสือ ASP สองเล่มแรกบวกการประยุกต์ใช้งานใหม่ๆ ที่ยังไม่เคยตีพิมพ์มาก่อน !!
    • การติดต่อฐานข้อมูลแบบ OLEDB + บทสรุปการติดต่อฐานข้อมูลทุกชนิด
    • เทคนิคการสุ่มข้อมูลออกจากฐานข้อมูล เพื่อประยุกต์ใช้สร้าง "เกมเศรษฐี" หรือระบบข้อสอบออนไลน์
    • การสร้างระบบความปลอดภัย SSL ใน Win 2000 และ Win NT เพื่อระบบ e-commerce
    • การอัปโหลดไฟล์ผ่านเว็บแบบไม่ต้องพึ่งคอมโพเนนต์
    • การอัปโหลดไฟล์เข้าสู่ฐานข้อมูลโดยตรง ทั้ง MS SQL Server และ MS Access
    • การพัฒนาระบบ web-based email ด้วย JMail
    • การสร้างคอมโพเนนต์ไว้ใช้เอง พร้อมตัวอย่างคอมโพเนนต์สําหรับส่งข้อความเรียกเพจเจอร์/มือถือ
  • พร้อมเนื้อหาแถมพิเศษอีกเพียบ อาทิ…
    • แนะนํา ASP ยุคใหม่ภายใต้รหัส ASP.NET
    • วิธีติดตั้ง PWS ใน Windows Me ไม่ให้เกิด error
    • ปรับความเข้าใจคอนเซ็ปต์ของ OOP เพื่อการเขียนสคริปต์ที่ถูกต้อง
    • สรุปสารพัดวิธีการติดต่อฐานข้อมูลทุกรูปแบบ ในลักษณะ quick reference
    • รวมรายชื่อเว็บไซต์ที่ให้บริการใช้งาน ASP ฟรี และเว็บไซต์ที่ให้ความรู้เกี่ยวกับ ASP และ ASP.NET


บทที่ 1 จาก DSN และ DSNLess มาเป็น OLEDB

การติดต่อฐานข้อมูลถือเป็น เรื่องสำคัญที่สุดเรื่องหนึ่งในการสร้างเว็บเพจ และ เป็นสิ่งที่ถูกพัฒนาให้ดียิ่งขึ้นมาโดยตลอด เทคนิค แบบ OLEDB เป็นการติดต่อฐานข้อมูลอีกวิธีหนึ่ง ที่มีประสิทธิภาพอย่างมาก จนอาจจะกล่าวได้ว่า เหนือกว่าเทคนิคแบบ DSN และ DSNLess ที่เราคุ้นเคยกันมาแล้วเสียอีก!

  • ติดต่อฐานข้อมูลแบบติดจรวด
  • ติดต่อฐานข้อมูลแบบฉบับ OLEDB
  • หลายคนบ่นว่า "ใช้ไม่ได้"
  • จะรู้ได้ไงว่าเป็น ADO เวอร์ชันไหน

บทที่ 2 สุ่มข้อมูลแบบไม่ซ้ำใคร

มีหลายตัวอย่างที่เป็น ผลลัพธ์จากการสุ่มข้อมูลออกจากฐานข้อมูล และ เราเจอะเจออย่างไม่รู้ตัว อย่างเช่น ทิปประจำวัน (Tip of the Day) หรือคำถามประจำวัน นอกจาก นั้นตามเว็บไซต์อีคอมเมิร์ซก็จะปรากฎรูปสินค้าที่สุ่ม มาอย่างไม่ซ้ำ แล้วก็ตั้งคำถามเอาไว้ว่า "คุณซื้อ สินค้าชิ้นนี้แล้วหรือยัง?" อยากรู้ไหมครับว่า เขาทำ ได้อย่างไร

  • ค่าเดียวเท่านั้นที่เราต้องการก็หวานหมู
  • สุ่มค่ายังไงไม่ให้ซ้ำกัน …งง?
  • ถ่ายข้อมูลใส่อาร์เรย์ก่อนแล้วค่อยยำใหญ่

บทที่ 3 เพลิดเพลินกับ "เกมเศรษฐี.ASP"

การเขียนเว็บเพจสำหรับเล่น "เกมเศรษฐี" นอกจากจะเป็นตัวอย่างของการ ประยุกต์ใช้วิธีติดต่อฐานข้อมูลแบบ OLEDB ที่ดีแล้ว ยังแสดงให้เราเห็นถึงวิธีการสุ่มคำถามออกจากฐาน ข้อมูล และวิธีที่จะเขียนโปรแกรมให้เกิดเงื่อนไขการ ตัดสินใจที่ซับซ้อน ในแบบฉบับของเกมอีกด้วย มาดู กันว่าการใช้ ASP สร้างสรรค์เกมมีความยากหรือ ง่ายอย่างไรบ้าง

  • ตั้งกติกาเกมเศรษฐีแบบฉบับออนไลน์
  • ไฟล์ไหน ทำอะไร ในเกมเศรษฐี.ASP
  • ฐานข้อมูลที่มีแต่ "ปัญหา" เต็มไปหมด
  • 2 ไฟล์เปิดรายการเกม
  • ถามมา-ตอบไป ได้ 1 ล้านบาท
  • ไฟล์ตัวช่วยที่ไม่ช่วยให้เขียนโปรแกรมง่ายขึ้น

บทที่ 4 รวมพลังฟังก์ชันตัดต่อ-ค้นหาคำ

โดยปกติผมเป็นคนที่ชอบ เขียนบทความลงในเว็บเพจ ยิ่งนานวันบทความก็ ยิ่งเยอะ เมื่อมีบทความเยอะ ผมก็ต้องสร้างระบบ ค้นหาเพื่อให้ผู้เยี่ยมชมเว็บเพจเลือกอ่านบทความย้อน หลังตามที่ต้องการได้สะดวก ปัญหาจึงเกิดตรงนี้ แหละครับ คือบทความของผมเป็นไฟล์ .html ไม่ใช่ ข้อมูลที่ถูกเก็บในฐานข้อมูล แล้วผมจะสร้างระบบ ค้นหาในไฟล์ .html ที่มีมากกว่า 10 ไฟล์นี้ได้ยังไง?

  • เริ่มต้นค้นหาคำกับ InStr
  • จะกรอกอีเมลมั่วเหรอ ไม่มีทางซะหรอก
  • ห้ามโพสต์คำหยาบนะจ๊ะ ไม่สุภาพ
  • เปลี่ยนจากค้นหาในประโยคเป็นค้นหาในไฟล์
  • Regular Expression กับการค้นหาคำที่ให้ผลลัพธ์ไม่ธรรมดา
  • ฟังก์ชัน Mid ดาบเดียวใช้ตัดคำก็เกินพอ
  • อ็อบเจ็กต์ Dictionary มีไว้เหมือนพจนานุกรม

บทที่ 5 อัปโหลดไฟล์อย่างไรโดยไม่พึ่งคอมโพเนนต์

การอัปโหลดไฟล์ เป็นเรื่อง ที่กล่าวถึงกันมากที่สุดเรื่องหนึ่งในหมู่นักพัฒนาเว็บ ASP ด้วยกัน ก็…แหม! ASP นี่อัปโหลดยากซะ จริงๆ เซิร์ฟเวอร์ที่จะทำภารกิจแบบนี้ได้ ต้องติดตั้ง คอมโพเนนต์ซึ่งราคาไม่ได้ถูกเลย แต่ถ้าผมบอกว่ามี วิธีอัปโหลดไฟล์โดยไม่ต้องพึ่งคอมโพเนนต์เหมือนกัน เพียงแต่ต้องอดทนเขียนโปรแกรมสักหน่อย… คุณ พร้อมจะอดทนกับผมมั้ยครับ

  • ใช้หรือไม่ใช้คอมโพเนนต์ต่างกันอย่างไร
  • แท็กนี้มีไว้อัปโหลดไฟล์เท่านั้น
  • แปลงโฉมฟอร์มธรรมดาด้วย multipart/form-data
  • ข้อมูลที่อัปโหลดมาหน้าตาไม่ดีเลย
  • ฟังก์ชันปรับเปลี่ยนไปมาระหว่างข้อความกับไบนารี
  • ระดมฟังก์ชันตัดต่อเฮดเดอร์
  • เฮดเดอร์ว่าตัดยาก แต่ข้อมูลภายในตัดยากกว่าหลายเท่า
  • วนรอบแกะรอยข้อมูลทีละส่วน
  • เก็บข้อมูลลงไฟล์ไม่ตกหล่น
  • ปัญหาสำคัญที่ไม่อาจมองข้าม

บทที่ 6 แข่งขันประชันรูปที่สติกเกอร์บอร์ด

ในบทนี้ เราจะนำความรู้ เรื่องการอัปโหลดไฟล์แบบไม่ต้องใช้คอมโพเนนต์ มาประยุกต์เพื่อสร้างของเล่นอีกชนิดหนึ่ง ซึ่งมี ชื่อเรียกกันว่า "สติกเกอร์บอร์ด" อย่างที่เราเห็น ในเว็บไซต์หลายแห่ง นอกจากสติกเกอร์บอร์ดจะนำ ไปใช้ประกวดรูปสติกเกอร์แล้ว ซอร์ซโค้ดนี้ยัง สามารถนำไปประยุกต์ใช้งานอย่างอื่นได้อีก อย่างเช่น ระบบประมูลสินค้า, ระบบการซื้อขาย สินค้ามือสอง ฯลฯ

  • ต้องสร้างกี่ไฟล์ และไฟล์ไหนทำอะไร
  • ฐานข้อมูล 3 ตาราง 3 หน้าที่
  • ไฟล์ board.asp แสดงหัวข้อสติกเกอร์ทั้งหมด
  • ขอแรงอัปโหลดจากไฟล์ getuploaddata.asp ในบทที่แล้ว
  • ไฟล์ show.asp ทำหน้าที่หลายอย่าง
  • เติมความคิดเห็น-เพิ่มข้อมูลแบบสามัญ
  • IP address เดิม ต้องห้าม! ภายใน 1 วัน
  • แถมพิเศษ ฟังก์ชัน DateAdd
  • คำนวณคะแนนใหม่จากผลคูณของคะแนนเก่า

บทที่ 7 อีกระดับกับ MS SQL Server (เมื่อธุรกิจออนไลน์ไม่เคยหยุดนิ่ง ภาค 1)

ธุรกิจออนไลน์ เป็นธุรกิจที่ เปิดบริการ 24 ชม. ไม่เคยหลับ ดังนั้นพัฒนาการ ของเว็บไซต์เหล่านี้จึงเพิ่มขึ้น อย่างรวดเร็ว มีเทคนิค ใหม่ๆ เกิดขึ้นตลอดเวลา ซึ่งหลายเทคนิคหลาย หัวข้อที่ไม่ได้กล่าวไว้ในหนังสือ ASP เล่มที่แล้ว ผม ก็อยากจะขออนุญาตหยิบยกขึ้นมาชี้แจงให้หายข้องใจ กันในหนังสือ ASP เล่มนี้เสียเลย

  • MS SQL Server เหนือกว่า MS Access
  • ถ้าไม่พร้อมจริงอย่าคิดใช้
  • สร้างฐานข้อมูลได้ง่ายสไตล์ไมโครซอฟต์
  • นำเข้าและส่งออกระหว่างฐานข้อมูล
  • คุณมีสิทธิเรียกดูข้อมูลในฐานข้อมูลหรือไม่?
  • ทดลองเรียกข้อมูลจาก Microsoft SQL Server

บทที่ 8 อัปโหลดไฟล์ลงฐานข้อมูล (เมื่อธุรกิจออนไลน์ไม่เคยหยุดนิ่ง ภาค 2)

เทคนิคอีกอย่างหนึ่งที่ เว็บไซต์ธุรกิจออนไลน์นิยมกันก็คือ การเก็บไฟล์ รูปภาพสินค้าลงไปในฐานข้อมูลเลย วิธีการนี้มีข้อได้ เปรียบหลายอย่าง ถ้าเปรียบเทียบกับวิธีการดั้งเดิม ที่เราอาศัยการเก็บแต่เฉพาะชื่อไฟล์ แล้วจึงค่อยนำ ชื่อไฟล์ไปเปิดไฟล์ภาพที่เก็บเอาไว้ในเซิร์ฟเวอร์อีกที คุณอยากทราบไหมครับว่า เทคนิคนี้ดีกว่าอย่างไร?

  • ทำไม? ต้องเก็บไฟล์ไว้ในฐานข้อมูล
  • ปรับชนิดของฟิลด์เป็น OLE Object เพื่อรับข้อมูลแบบไบนารี
  • AppendChunk ฝังข้อมูลไบนารีลงฐานข้อมูล
  • อัปโหลดรูปภาพลงฐานข้อมูล MS Access
  • อัปโหลดรูปภาพลงฐานข้อมูล MS SQL Server ก็เหมือนกัน
  • ปลอม Content-Type และข้อมูลหลอกล่อเบราเซอร์
  • GetChunk ย้อนรอย AppendChunk
  • showimage.asp เปิดรูปจากฐานข้อมูลด้วยค่า id
  • ระบบสมาชิกแบบมีรูปภาพ
  • 3 เรื่องที่ต้องแจกแจงให้ชัดเจน

บทที่ 9 ใช้ SSL สร้างระบบความปลอดภัยให้เซิร์ฟเวอร์ (เมื่อธุรกิจออนไลน์ไม่เคยหยุดนิ่ง ภาค 3)

ถึงแม้ว่าระบบการตัดบัญชี จากบัตรเครดิต เป็นวิธีการชำระเงินที่นิยมที่สุดใน อินเทอร์เน็ต แต่ทุกครั้งที่พูด ถึงระบบนี้ ก็ต้องมี คำถามตามมาอยู่เสมอว่า การแจ้งหมายเลขบัตร เครดิตจะมีความปลอดภัยมากแค่ไหน ดังนั้นเพื่อที่ จะตอบข้อสงสัยลักษณะนี้ได้อย่างเต็มปากเต็มคำ ผมจึงขอใช้พื้นที่ในบทนี้ทั้งหมด เป็นบทแห่งระบบ ความปลอดภัยในเซิร์ฟเวอร์และ SSL

  • Public Key และ Private Key กุญแจคู่เดียวในโลก
  • ก่อนส่งข้อมูลอย่าลืมผสม Public Key
  • Certificate Authority องค์กรที่รับรองการใช้ SSL
  • เริ่มต้นสร้างไฟล์ CSR ใน Windows 2000
  • ราคา Certificate ไม่มีมาตรฐานแน่นอน
  • ขอ Certificate ที่ Verisign มาใช้ฟรี
  • ตั้งตนเป็น CA (เถื่อน)
  • วิธีการร้องขอ Certificate จาก CA ของเรา
  • ขอเมื่อไหร่ อนุมัติให้เมื่อนั้น
  • กลับไปยังหน้าร้านอีกครั้งเพื่อรับไฟล์ Certificate
  • ปรับแต่งเว็บเซิร์ฟเวอร์ให้ใช้งาน SSL
  • ไฟล์ไหนๆ ก็ใช้ SSL ได้)
  • การสร้าง SSL ใน Windows NT
  • สร้างไฟล์ CSR ใน Key Manger
  • ตั้งตนเป็น CA ใน Windows NT
  • อนุมัติ Certificate แบบย้อนยุคชวนปวดหัว
  • ฝัง Certificate ลงเซิร์ฟเวอร์ NT ปลุกพลัง SSL
  • การสร้าง SSL สำหรับคนที่เช่าโฮสต์อยู่ (ไม่ใช่เซิร์ฟเวอร์ของตัวเอง)

บทที่ 10 3 คอมโพเนนต์อัปโหลด 3 ความเหมือนที่แตกต่าง

การใช้คอมโพเนนต์ช่วย อัปโหลดไฟล์ ต้องมีอะไรดีๆ อยู่แล้ว ไม่อย่างนั้น บริษัทซอฟต์แวร์หลายแห่ง คงไม่ขายคอมโพเนนต์กัน เป็นล่ำเป็นสันจนโกยกำไรมหาศาล และกลายเป็น ยักษ์ใหญ่ในวงการ ASP อย่างแน่นอน ลูกเล่นเหนือ ชั้นที่คอมโพเนนต์เหล่านี้ทำได้ ก็คือ การบ่งบอก ความกว้าง-ยาวของรูปภาพที่อัปโหลด, การเปลี่ยน permission หรือแม้แต่การแสดง progress bar แจ้งความคืบหน้าขณะอัปโหลดไฟล์

  • ASPUpload คอมโพเนนต์เก่าแก่แต่โบราณ
  • อัปโหลดได้ด้วยโค้ดแค่ 2 บรรทัด!
  • For Each วนรอบเก็บเรียบทุกไฟล์
  • อัปโหลดลงฐานข้อมูล ง่ายกว่านี้มีอีกไหม?
  • SA-FileUp คอมโพเนนต์ที่มีแต่ราคา (คุย)
  • progress bar ช่วยชุบชีวิต
  • Dundas Upload ของฟรี! ที่เขี่ยทุกคอมโพเนนต์ตกกระป๋อง
  • เก็บไฟล์ลงฐานข้อมูลด้วย Dundas Upload
  • progress bar จากคอมโพเนนต์ฟรีๆ
  • stateserver.exe แอปพลิเคชันที่ขาดไม่ได้

บทที่ 11 Web-based E-mail เพื่อบริการอีเมลผ่านเว็บ

ผมเชื่อแน่ว่าคงไม่มีใครที่ ไม่รู้จักบริการอีเมลฟรีอย่าง mail.com, hotmail.com หรืออีเมลฟรีสัญชาติไทย อย่าง thaimail.com บริการจากเว็บไซต์เหล่านี้ เรียกว่า อีเมลผ่านเว็บ (web-based e-mail) เพราะฉะนั้น เมื่อผมนำชื่อบริการนี้มาตั้งเป็นชื่อบท ก็ถึงคราวที่ จะต้องมาเฉลยข้อสงสัยกันเสียทีว่า เราสามารถ พัฒนาระบบให้บริการอีเมลฟรีลักษณะนี้ โดยใช้ ASP ได้อย่างไร

  • กว่า JMail จะมีชื่อเสียงเช่นทุกวันนี้
  • รื้อฟื้นคำสั่งส่งเมลกับอ็อบเจ็กต์ Message
  • ทำความเข้าใจอ็อบเจ็กต์ POP3
  • โครงการเช็กอีเมลผ่านเว็บ เอาไว้แข่งกับ Hotmail
  • ไฟล์ login และ logout ประตูผ่านด่านสำหรับการเช็กเมล
  • เปิดเมลบ็อกซ์แสดงเมลทั้งหมด
  • ขอดูเนื้อความภายในเมลหน่อยครับ
  • ตอบเมลกลับหรือเขียนเมลใหม่ล้วนใช้ไฟล์เดียวกัน
  • ส่งเมลทันทีไม่รีรอ
  • ลบเมลได้หลายเมลพร้อมกัน
  • บทวิเคราะห์คอมโพเนนต์ค่ายอื่น

บทที่ 12 สร้างคอมโพเนนต์ให้ ASP ทวีความสามารถไร้ขีดจำกัด

เมื่อคอมโพเนนต์กลายเป็น สิ่งเดียว ที่ช่วยเพิ่มความสามารถพิเศษให้ ASP เหนือกว่าสคริปต์ภาษาอื่นๆ ดังนั้นเราไม่ควรพลาด เรื่องนี้อย่างแน่นอน ลองนึกดูสิครับว่า ถ้านำความ สามารถของ Visual Basic หรือ Visual C/C++ มาเขียนเป็นคอมโพเนนต์ได้ เว็บเพจของเราจะทรง พลังแค่ไหน อ้อ… บทนี้มีทีเด็ดเกี่ยวกับคอมโพเนนต์ สำหรับสร้างซ็อกเก็ต (socket) ด้วยนะครับ จะได้รู้ กันไปว่า ASP ก็เรียกเพจเจอร์ได้ไม่แพ้ Perl

  • คอมโพเนนต์คืออะไร (อีกที)
  • ใช้ Visual Basic ญาติสนิทของเรา
  • Hello world! สวัสดีชาวโลกตามธรรมเนียม
  • คอมโพเนนต์ของนักคณิตศาสตร์
  • เพิ่มไฟล์อ้างอิง MSWINSCK.OCX ก่อนสร้างซ็อกเก็ต
  • ส่งเพจด้วยคอมโพเนนต์คือการแอบสั่ง CGI ให้ทำงาน
  • สร้างเฮดเดอร์ให้เหมือนว่าเป็นพวกเดียวกัน
  • ได้เวลาเขียนคอมโพเนนต์ Pager กันแล้ว
  • ส่งเพจสำหรับค่ายอื่น
  • แนวทางการพัฒนาเข้าหาโทรศัพท์มือถือ

ภาคผนวก ก

  • สารพัดการติดต่อฐานข้อมูลทุกรูปแบบ
  • การติดต่อฐานข้อมูลแบบผ่าน DSN
  • การติดต่อฐานข้อมูลแบบ DSNLess
  • การติดต่อฐานข้อมูลแบบ OLEDB Provider
  • การติดต่อฐานข้อมูลแบบ OLEDB Provider ทางไกล (remote)

ภาคผนวก ข

  • CursorType และ LockType ในอ็อบเจ็กต์ Recordset
  • การสร้างและแสดงข้อมูลด้วยอ็อบเจ็กต์ Recordset
  • กำหนดค่า CursorType ควบคุมการเลื่อนพอยน์เตอร์
  • กำหนดค่า LockType ปกป้องข้อมูลปัจจุบัน

ภาคผนวก ค

  • เสี้ยวหนึ่งของ OOP เพื่อความเข้าใจที่ถูกต้อง
  • มีอะไรมากมายในอ็อบเจ็กต์
  • แล้ว OOP เกี่ยวอะไรกับหนังสือ ASP?
  • อ็อบเจ็กต์ของ ASP และ VBScript มีองค์ประกอบอย่างไรบ้าง

ภาคผนวก ง

  • ติดตั้ง PWS อย่างไรไม่ให้เกิด error ใน Windows Me

ภาคผนวก จ

  • ยุคใหม่ของ ASP ภายใต้รหัส ASP.NET
  • ต้องการอะไรก่อนไปเป็นพวก .NET
  • ข้อดีที่เหนือชั้นของ ASP.NET

ภาคผนวก ฉ

  • รวมสุดยอดโฮสต์ฟรีที่รองรับการใช้งาน ASP
  • DedicateService พื้นที่น้อยแต่มากด้วยบริการ
  • RealFTP โฮสต์ฟรีที่ใช้ FTP ได้จริงๆ
  • DomainDLX แห่งเดียวที่มีป้ายโฆษณา
  • Brinkster สืบทอดชื่อเสียงของ Ewebcity
  • InterNexus Technologies ทุกอย่างเรียบง่าย
  • DeeFree โฮสต์ฟรี ASP รายแรกสุดในเมืองไทย

ภาคผนวก ช

  • 20 + 10 เว็บไซต์เจาะใจผู้ใช้ ASP
  • 20 เว็บไซต์เพื่อผู้ฝักใฝ่ ASP
  • 10 เว็บไซต์เน้นไปที่ ASP.NET

FAQ คำถามที่ถามบ่อย

  • คำถามทั่วไป
  • คำถามเกี่ยวกับฐานข้อมูล
  • คำถามเกี่ยวกับไฟล์
  • คำถามเกี่ยวกับคอมโพเนนต์
  • คำถามเกี่ยวกับการส่งและรับเมล
  • คำถามเกี่ยวกับการอัปโหลดไฟล์
  • คำถามเกี่ยวกับการสร้าง SSL
  • คำถามเกี่ยวกับ ASP.NET

ดัชนี