Chapter 1. Introduction   

Common Gateway Interface (CGI)

           บทเรียน PHP Programming นี้เป็นบทเรียนสำหรับผู้ที่เริ่มต้นหรือผู้ที่ไม่เคยเขียน โปรแกรมใดๆ มาก่อนเลย ส่วนท่านที่มีความรู้ PHP มาบ้างแล้วผู้เขียนแนะนำให้ไปศึกษาที่อื่นๆ ซึ่ง ThaiWBI มี Link อยู่ที่ Education Link แล้ว หรือถ้าต้องการศึกษาในบทเรียนนี้ก็สามารถทำได้

          Source Code ในบทเรียนนี้ทั้งหมด คุณสามารถ Down Load ไปศึกษาได้

           ก่อนที่จะเข้าสู่ PHP Programming จะขอกล่าว ถึง CGI ก่อน เพราะว่า PHP ทำหน้าที่เป็น CGI ตัวหนึ่ง

           www เป็นเทคโนโลยีส่วนหนึ่งของการให้บริการ Internet เราคงรู้จัก www กันดี เพราะ www เป็นเทคโนโลยีที่มาแรง และเป็นที่นิยมกันมากในขณะนี้ อาจกล่าวได้ว่าเป็นตัวแทนของการให้บริการทั่งหมดของ Internet เลยก็ได้ http (Hypertext Transfer Protocol) ทำให้ www มีชีวิตชีวา   สามารถนำเสนอในรูป Text, Color , Graphic, Animation, Sound, Movie  etc. การนำเสนอในรูปแบบดังกล่าว สร้างความสนใจแก่ผู้ใช้เป็นอันมาก เพราะผู้ใช้ไม่ต้องทนใช้ Telnet (บริการ Internet ยุคแรกเริ่ม) ที่มีแต่ text และคำสั่งที่ต้องจดจำมากมาย อีกต่อไป

         ที่กล่าวมาเป็นเพียงส่วนหนึ่งของ http เท่านั้น ยังมีส่วนที่มีความสามารถที่ทรงพลังอีก ส่วนนี้เราเรียกมันว่า CGI หรือ Common Gateway Interface มันสามารถรับเอาข้อมูลจาก  Client ไปประมาลผลที่ Server และส่งผลลัพธ์กลับไปให้ Cilent เช่น Client ต้องการสอบถามข้อมูลว่ามี Website ใดที่มีข้อมูลที่เกี่ยวข้องกับ PHP บ้าง มันก็จะรับข้อมูลไปประมาลผลที่ Server และ Server ก็จะตรวจสอบกัน Database ที่มีอยู่ว่ามี Website ใดมีข้อมูลดังกล่าวหรือไม่ เสร็จแล้วก็จะส่งผลกับไปให้ที่ Client

main_cgi.gif (13731 bytes)
          CGI ไม่ใช่ภาษา CGI เป็นหลักการทำงาน ทำงานอย่างไร ขอให้ดูจากภาพข้างบน

          หลักการทำงาน

  1. Client เรียกข้อมูล http จาก Web Server เช่นเรียก http://www.thaiwbi.com
  2. Server ส่งข้อมูล เป็น Homepage หรือ html format มายัง Client
  3. Client ส่งข้อมูลที่ต้องให้ประมวลไปให้ Server  เช่น สั่งซื้อสิ้นค้า
  4. Server ประมาลผล ตรวจสอบสินค้า
  5. Server ส่งผลการประมาลกลับไปให้ Client
  6. Client ยืนยันการสั่งสินค้า
  7. Server ตัดสินค้าในคลัง บันทึกลง Database

          แล้ว CGI ใช้ ภาษาอะไร
          CGI จะใช้ภาษาใดต้องคำนึงถึง Plateform ของ Webser ด้วย ดังนี้

Unix/Linux WindowsNT
C
C++
Perl
PHP
Perl
PHP
ASP
CFM

PHP

         PHP ย่อมาจาก Professional Home Pages
         PHP ได้รับการเผยแพร่เป็นครั้งแรกในปีค.ศ.1994 จากนั้นก็มีการพัฒนาต่อมาตามลำดับ เป็นเวอร์ชั่น 1 ในปี 1995 เวอร์ชั่น 2 (ตอนนั้นใช้ชื่อว่า PHP/FI) ในช่วงระหว่าง 1995-1997และเวอร์ชั่น 3 ช่วง 1997 ถึง 1999 จนถึงเวอร์ชั่น 4 ในปัจจุบัน
       PHP เป็น Complier หรือ Interpreter PHP เป็น Interpreter ประมวลผลการทำงาน โดยแปลความหมายที่ละบรรทัด
         ข้อดีของ Interpreter คือ เป็นการ Open source โปรแกรมที่ Open source จะพัฒนาอย่างรวดเร็วเนื่องจาก เกิดการ Copy แก้ไข ตลอดจนพัฒนาขึ้นมาใหม่ตามแนวทางตัวอย่าง การที่มีต้นแบบหรือต้นฉบับ จะทำให้ไม่เสียเวลาเขียนใหม่ นำไปแก้ไขนิดหน่อยก็ใช้ได้ ตัวอย่าง Open source เช่น Linux Java Script Perl PHP ASP เป็นต้น

         PHP ร่วมพัฒนาโดย

  • Zeev Suraski, Israel
  • Andi Gutmans, Israel
  • Shane Caraveo, Florida USA
  • Stig Bakken, Norway
  • Andrey Zmievski, Nebraska USA
  • Sascha Schumann, Dortmund, Germany
  • Thies C. Arntzen, Hamburg, Germany
  • Jim Winstead, Los Angeles, USA
  • Rasmus Lerdorf, North Carolina, USA

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

         เหตุผลที่สำคัญที่ทำให้เป็นที่นิยมคือ

  1. แน่นอนเป็นของฟรี
  2. สามาถติดตั้งบน Win 32 หรือ Linux/Unix ก็ได้
  3. เขียนง่ายเพราะนำเอา Perl และ C มาพัฒนา ผู้ที่เขียน Perl หรือ C อยู่แล้วก็สามารถศึกษาได้ง่าย
  4. ความสามารถพิเศษด้านติดต่อฐานข้อมูล Database
  5. มี Function สำเร็จรูปมาให้ จากที่เคยเขียนคำสั่งมากมายใน Perl, C
  6. เป็น Scripting language ที่สามารถแทรกเป็น Script tag ตามจุดต่างๆภายใน html tag ได้

Copy right Passkorn Roungrong