การส่งข้อมูลแบบ Post
คำสั่งที่ใช้ในการรับข้อมูล :   buffer = getenv("CONTENT_LENGTH");
        การสร้างโปรแกรม CGI ประกอบด้วย 2 ส่วน
        1) โปรแกรม HTML หรือ Home page ในโปรแกรม HTML ต้องใช้คำสั่งของ < Form>
เพื่อติดต่อ และส่งข้อมูลไปยังโปรแกรม CGI ซึ่งลักษณะการส่งข้อมูลสามารถศึกษา
ได้จากนี้
        2) โปรแกรม CGI ทำหน้าที่รับข้อมูลมาจากข้อ (1) และนำข้อมูลเหล่านี้มา Process
ตามความประสงค์ของผู้ใช และเมื่อได้ Output ออกมาจึงจะนำมาสร้างเป็นโปรแกรม
ก่อนจึงส่งกลับไปยังผู้ใช้ ในที่นี้ได้สร้างโมดูลชื่อ
scaner.h เพื่อรับข้อมูลจาก Home page
โดยผู้ใช้เพียงแต่ Include เข้ามา จะ สามารถใช้ได้อย่างสะดวกมาก เรียกว่าลืม CGI ได้เลย.
        สำหรับการเรียกใช้เป็นดังนี้   n = scaner(),   n คือจำนวน Field ข้อมูล,
ส่วน Field ข้อมูลจะเก็บในตัวแปร _field[0], _field[1], . . . _field[n] เป็น ชนิด String
  โดยมีจำนวน Fields ไม่เกิน 10 fields แต่ละ fields มีความยาวไม่เกิน 320 ตัวอักษร
  แต่ทั้งนี้เราสามารถแก้ไขได้ตามความต้องการได้ โดย
เข้าไปแก้ไขที่ส่วนหัวของ scaner.h เพียง
ที่เดียว   สำหรับตัวแปร _str[] ไว้สำหรับรับสายข้อมูลทั้งหมดที่ส่งมาจาก Home page มีความยาว
ไม่เกิน 490 ถ้าไม่เพียงพอก็เปลี่ยนไปเป็นตามความเหมาะสม
        ส่วน Process ก็ขึ้นอยู่กับความสามารถของผู้เขียนโปรแกรม และ
ถือว่าเป็นส่วนที่จะต้องรับผิดชอบเอง   อีกทั้งจะต้องสั่งให้สร้างโปรแกรม
HTML อีกด้วย ดังนั้นผู้สร้างก็ควรสร้างโปรแกรม HTML เป็นแบบจำลองขึ้นก่อนจะให้สวยแค่ไหน
ตามใจชอบ เชิญ ! จากนั้นจึงนำรูปแบบนี้มาสร้างด้วยภาษา C
       ตัวอย่าง : การสร้าง
Home page1,
Home page2 รับ
รหัส นักศึกษา เพื่อ นำ ไป ให้
โปรแกรม ค้นหารายชื่อนิสิต
เพื่อนำมาแสดงผล
การส่งข้อมูลแบบ Get
คำสั่งที่ใช้ในการรับข้อมูล :   buffer = getenv("QUERY_STRING");
        การสร้างโปรแกรม CGI ในลักษณะนี้ก็เช่นเดียวกับวิธีข้างต้น จะต้องประกอบด้วย 2 ส่วนเช่นกัน ส่วนแรกเป็น
Home page ซึ่งไม่ต้องมีคำสั่ง Form แต่ข้อมูลจะส่งไป พร้อมกับ URL เช่น
http://cs.compsci.buu.ac.th/~phong/Get/test.cgi?ID=340104&name=Phong ในที่นี้จะมีการส่งระหัส 340104 ไปกับตัวแปร ID และ
ซื่อ Phong ไปกับตัวแปร name ให้โปรแกรม test.cgi ซึ่งเป็นส่วนที่ 2 ประมวลผลต่อไป เพื่อความเข้าใจยิ่งขึ้นลองทดสอบการส่งข้อมูล
ในลักษณะดังกล่าวจาก
ตัวอย่างนี้,
โปรแกรม
การใช้ CGI-Library
การใช้คำสั่งรับข้อมูลจาก CGI-Library
ตัวอย่างโปรแกรม
Back