PHP เปลี่ยนวิถีสู่การสร้างโฮมเพจอย่างมือโปร ขั้นที่ 2

ผู้เขียน: นราวุธ พลับประสิทธิ์
ISBN: 974-91017-6-6
จำนวนหน้า: 480 หน้า
ขนาด: 14.5 x 21 ซม.
รูปแบบหนังสือ: หนังสือขาวดำ

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


  • เปิดเผยวิธีแก้ไขซอร์ซโค้ดของ PHP เวอร์ชันเก่าๆ ให้สามารถใช้งานได้กับ PHP เวอร์ชันใหม่ (ตั้งแต่เวอร์ชัน 4.1.0 ขึ้นไป)
  • แจกแจงขั้นตอนการติดตั้ง PHP ทั้งแบบ InstallShield Installer และแบบ Zip Package พร้อมทั้งการติดตั้งเครื่องมืออื่นๆ ที่จำเป็นในการทดสอบสคริปต์ของท่าน อย่าง OmniHTTPd และ PWS4
  • มีตัวอย่างการพัฒนาเว็บแอปพลิเคชันหลากหลายแบบในระดับมืออาชีพ อาทิ การทำโพลล์, เคาน์เตอร์และเคาน์เตอร์ย่อย, การจัดการแบนเนอร์, จดหมายข่าว, เกสต์บุ๊ก, เว็บบอร์ด ฯลฯ พร้อมคำอธิบายละเอียดยิบทุกขั้นตอน ตลอดทั้งเล่ม
  • แนะนำวิธีค้นหาข้อมูลจากคู่มือ PHP ฉบับ CHM และพาทัวร์เว็บไซต์ที่ให้ความรู้เกี่ยวกับ PHP สำหรับผู้ที่ต้องการเป็นนักพัฒนา PHP ระดับสุดยอด!


บทที่ 1 แนะนำคุณสมบัติใหม่และทบทวนพื้นฐาน

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

  • ทำงานตามสไตล์ไคลเอนต์/เซิร์ฟเวอร์
  • ประกาศแท็กได้ 5 รูปแบบ
  • รูปแบบตัวแปรเมื่อรับค่าจากฟอร์ม
  • ด้วยวิธี POST และ GET
  • เรียกใช้ไฟล์ภายนอกด้วย include() และ require()
  • PHP เปลี่ยนเวอร์ชันบ่อย อย่าตกใจ!!!
  • สำรวจคุณสมบัติใหม่ใน PHP4 แต่ละเวอร์ชันย่อย
  • ก้าวไปอีกขั้นกับ PHP-GTK
  • PEAR เครื่องมือใหม่ที่มาพร้อม PHP 4.3.0
  • คุยกันท้ายบท

บทที่ 2 ติดตั้งเครื่องมือให้พร้อมก่อน

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

  • เริ่มต้นด้วยการติดตั้ง PHP ใน Windows
  • ติดตั้งด้วย InstallShield Installer ก็พอสำหรับมือใหม่
  • ติดตั้งแบบเต็มรูปจาก Zip Package
  • ต่อด้วยการติดตั้งเว็บเซิร์ฟเวอร์ใน Windows
  • ถ้าเลือกใช้ OmniHTTPd เป็นเว็บเซิร์ฟเวอร์...
  • ปรับแต่ง OmniHTTPd ให้เหมาะสมกับการทำงาน
  • เพิ่มนามสกุลอื่นๆ ของไฟล์สคริปต์ PHP
  • เปลี่ยนโฮมไดเรกทอรีและโฮมเพจ (ดีฟอลต์อินเด็กซ์) ตามใจชอบ
  • ทำอย่างไรให้ใช้ OmniHTTPd ได้ตลอดกาล!!!
  • PWS4 เป็นอีกเว็บเซิร์ฟเวอร์หนึ่งที่น่าสนใจ
  • ปรับแต่ง PWS4 ให้เหมาะสมกับการทำงาน
  • แก้ปัญหาการติดตั้ง PWS4 ใน Windows ME
  • ตรวจสอบแก้ไขอย่างไรเมื่อเว็บเซิร์ฟเวอร์ไม่ทำงาน
  • คุยกันท้ายบท

บทที่ 3 สรุปวิธีติดต่อฐานข้อมูล MySQL, Access และ SQL Server

การเขียนสคริปต์ PHP เพื่อติดต่อกับฐานข้อมูล มี 2 วิธี คือ ติดต่อผ่าน ODBC หรือติดต่อโดยใช้ฟังก์ชันที่ PHP เตรียมไว้ให้โดย ตรง ทั้ง 2 วิธีนี้มีข้อดีข้อเสียแตกต่างกัน ซึ่งเราจะได้ทำความเข้าใจ และดูขั้นตอนการเขียนสคริปต์อย่างละเอียด โดยเปรียบเทียบระหว่าง การติดต่อกับระบบฐานข้อมูลยอดนิยม 3 ระบบ คือ MySQL, MS Access และ MS SQL Server

  • วิธีแรก = ติดต่อผ่าน ODBC
  • ลองสร้าง DSN เพื่อติดต่อ MS Access
  • หันมาสร้าง DSN เพื่อติดต่อ MS SQL Server ดูบ้าง
  • ปิดท้ายด้วยการลองสร้าง DSN ติดต่อ MySQL
  • หัดเขียนสคริปต์ติดต่อฐานข้อมูลผ่าน ODBC จริงๆ
  • วิธีที่สอง = ติดต่อโดยใช้ฟังก์ชันใน PHP
  • ลองใช้ฟังก์ชันติดต่อฐานข้อมูล MS SQL Server
  • โดยตรง
  • ดัดแปลงสคริปต์เดิมเพื่อติดต่อ MySQL ให้เห็นผลจะจะ
  • คุยกันท้ายบท

บทที่ 4 ตกลงกติกาก่อนเขียนสคริปต์จริง

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

  • ลดซอร์ซโค้ดที่ซ้ำซ้อน โดยเก็บในไฟล์ภายนอก
  • แก้ปัญหาอย่างไรเมื่อเกิดข้อความเตือน
  • จากไฟล์ EndConnect.inc
  • เทคนิคการดึงข้อมูลออกจาก MySQL
  • ใช้ alias name ช่วยในคำสั่ง SQL
  • ถ่ายค่าที่รับจากฟอร์มไว้ในตัวแปรธรรมดาก่อนเสมอ

บทที่ 5 ทำโพลล์แบบออนไลน์

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

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

บทที่ 6 Cookie กับเคาน์เตอร์อัจฉริยะ

ในหนังสือ PHP เล่ม 1 เคยแสดงตัวอย่างการเขียนสคริปต์ เพื่อสร้างเคาน์เตอร์มาแล้ว แต่เป็นเคาน์เตอร์ที่มีความสามารถระดับหนึ่ง คราวนี้เราจะมาพัฒนาเคาน์เตอร์ให้เก่งขึ้น จนเข้าขั้นเคาน์เตอร์ อัจฉริยะ โดยอาศัยความสามารถของ Cookie และเพิ่มเคาน์เตอร์ย่อย เพื่อนับจำนวนการเปิดดูไฟล์บางไฟล์ต่างหาก นอกเหนือจากเคาน์เตอร์ หลักในเว็บไซต์ด้วย

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

บทที่ 7 บริหารแบนเนอร์ให้มีประสิทธิภาพสูงสุด

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

  • แบนเนอร์มาตรฐานมีกี่ขนาดบ้าง ???
  • แสดงแบนเนอร์ง่ายๆ ด้วยแท็ก img
  • ออกแบบเทเบิลที่ใช้เก็บข้อมูลก่อน
  • สคริปต์เวอร์ชัน 1 = แสดงแบนเนอร์แบบสุ่ม
  • สคริปต์เวอร์ชัน 2 = สุ่มแบนเนอร์แบบยุติธรรม
  • สคริปต์เวอร์ชัน 3 = แสดงแบนเนอร์
  • ตามน้ำหนักความสำคัญ
  • คุยกันท้ายบท

บทที่ 8 ทำระบบล็อกอิน+ล็อกเอาต์ ด้วยตัวแปร Session

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

  • หลักการทำงานพื้นฐาน
  • ออกแบบเทเบิลเก็บข้อมูลเกี่ยวกับผู้ใช้
  • ระบบล็อกอิน+ล็อกเอาต์ประกอบด้วยไฟล์อะไรบ้าง
  • สร้างแบบฟอร์มการล็อกอิน
  • เขียนสคริปต์เพื่อตรวจสอบชื่อผู้ใช้
  • เบื้องต้นกับตัวแปร Session
  • ประโยชน์ของตัวแปร Session
  • ใช้ session_register() เพื่อประกาศตัวแปร Session
  • ง่ายๆ กับการลบตัวแปร Session
  • ตัวแปร Session เก็บไว้ที่ไหนกัน
  • ประยุกต์ใช้ตัวแปร Session กับระบบล็อกอิน
  • สร้างระบบล็อกเอาต์เพื่อความปลอดภัย
  • คุยกันท้ายบท

บทที่ 9 เกสต์บุ๊กฉบับใช้งานจริง

สมุดเยี่ยมชมที่เราจะพัฒนาในบทนี้ เป็นเวอร์ชันที่เพิ่มความ สามารถจากสมุดเยี่ยมชมในหนังสือ PHP เล่ม 1 มากมาย ไม่ว่าจะ เป็นการตรวจสอบความถูกต้องของข้อมูล, การ Preview ก่อนบันทึก ลงฐานข้อมูล, การตรวจสอบป้องกันคำไม่สุภาพ และอื่นๆ อีกหลาย อย่าง ซึ่งสามารถนำไปใช้งานจริงในเว็บไซต์ของท่านได้ทันที

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

บทที่ 10 บริการ mailing list ผูกใจผู้ชมเว็บ

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

  • หลักการทำงานพื้นฐาน
  • ออกแบบเทเบิลเพื่อเก็บอีเมลแอดเดรส
  • บริการ mailing list ประกอบด้วยไฟล์อะไรบ้าง
  • สร้างแบบฟอร์มรับสมัคร/ยกเลิกสมาชิก
  • ตรวจสอบอีเมลก่อนบันทึกหรือลบทิ้ง
  • เพิ่มเติมกับฟังก์ชัน mail()
  • รอ-รอ-รอ...รอจนกว่า ???
  • เตรียมแบบฟอร์มการส่งจดหมายข่าว
  • preview เพื่อตรวจสอบความถูกต้องก่อนส่ง
  • ได้เวลาส่งจดหมายข่าวไปยังสมาชิกจริงๆ ซะที
  • ข้อบกพร่องที่ควรปรับปรุงคือ "Script timed out"
  • คุยกันท้ายบท

บทที่ 11 รวมพลคนออนไลน์ที่เว็บบอร์ด

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

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

บทที่ 12 เพิ่มหน้า Admin และลูกเล่นในเว็บบอร์ด

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

  • ชี้แจงกติกาก่อนลงมือพัฒนาต่อ
  • ง่ายๆ กับการจัดระเบียบกระทู้ด้วยแท็ก table
  • กระทู้ใหม่และกระทู้สุดฮิต จะรู้ได้อย่างไร ?
  • นับจำนวนคนเปิดอ่านกระทู้
  • เพิ่มความสะดวกด้วยระบบค้นหากระทู้
  • จะอ่านกระทู้ก่อนหน้าหรือกระทู้ต่อไป
  • ก็ทำได้ภายในคลิกเดียว
  • แต่งแต้มสีสันให้กระทู้ดูสดใส
  • ส่งอีเมลไปบอกเมื่อมีคนมาตอบกระทู้
  • สร้างเว็บเพจ Admin สำหรับลบกระทู้ที่ไม่เหมาะสม
  • คุยกันท้ายบท

ภาคผนวก ก เรียนรู้การใช้คู่มือ PHP ฉบับ CHM

  • download+unzip แล้วใช้งานได้เลย
  • แจกแจงรายละเอียดวิธีใช้งาน
  • ใช้คีย์ลัดแทนเพื่อความคล่องตัว

ภาคผนวก ข สารพันเว็บไซต์ PHP เด็ดๆ

  • เว็บไซต์ภาษาไทย
  • เว็บไซต์ต่างประเทศ

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

  • หมวด PHP เบื้องต้น
  • หมวดการติดตั้ง PHP
  • หมวดเทคนิคการเขียนสคริปต์ PHP
  • หมวดการเขียนสคริปต์ PHP เพื่อติดต่อกับฐานข้อมูล

ดัชนี