web cgi program c
1. ขั้นตอนแรกเราต้องมีสิ่งจำเป้นที่ใช้ในการเขียนดังนี้1.1. ระบบปฎบัติการ(OS) LINUX
1.2. โปรแกรม HTTP เราจะใช้ Apache2
2. ขั้นตอนการติดตัังและการใช้งาน ต้องใช้ terminal ในการใช้คำสั่งต่างๆๆ
2.1. ใช้คำสั่งเพื่อเข้าสู่ user root
$sudo su หรือ $su รหัสroot
2.2 จากนั้นก็ติดตั้งโปรแกรม apache2(http) ด้วยคำสั่ง
#sudo apt-get install apache2 ตอบ y
2.3 จากนั้นก็ติดตั้งโปรแกรม gcc ที่ใช้ในการคอมไพล์ ด้วยคำสั่ง
#sudo apt-get install gcc ตอบ y
3. ขั้นตอนการเขียน cgi และการใช้งาน
3.1 เข้าไป directory /usr/lib/cgi-bin ที่ใช้ในการรัน web cgi
#cd /
#cd /usr/lib/cgi-bin
#touch filename.c สร้างไฟล์ในการเขียน cgi
#gedit filename.c หรือ #nano filename.c เปิดไฟล์เพื่อเขียนโค้ด
3.2 ทำการเขียนโค้ดตามต้องการ
ตัวอย่าง
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[], char *env[])
{
printf("Content-type:text/html\n\n<html><body bgcolor=green>\n");
char value[256] = "";
char value2[256] = "";
strncpy(value,(char *) getenv("QUERY_STRING"),255);
strncpy(value2,(char *) getenv("QUERY_STRING"),255);
printf("<FORM ACTION="">\n");
printf("First Name :\n");
printf("<input type='AA'name='FIRST_IS:'>\n");
printf("Last Name :\n");
printf("<input type='BB'name='LASTNAME_IS:'>\n");
printf("</br>Student ID :\n");
printf("<input type='CC'name='STUDENTDENT_ID:'>\n");
printf("<br><br>Comment :<br>\n");
printf("<textarea name='COMMENT_IS' rows='10' cols='80' </textarea><br>\n");
printf("<br><center><input type=\"SUBMIT\"></center>");
printf("<hr></form></body></html>\n");
printf("LIST :<br> %s <br><hr>", value );
return 0;
}
3.3 การไขโค้ด
#gedit filename.c หรือ #nano filename.c
3.4 การ compile code filename.c
#gcc filename.c -o newfilename.cgi หากมี error จะแสดงให้เห็น ต้องแก้ไขโค้ดให้ถูกต้อง หากถูกต้องแล้วก็ขั้นตอนต่อไปได้เลย
3.5 การทดสอบไฟล์ newfilename.cgi ด้วย webbrower ที่ได้จากการคอมไฟล์ **เมื่อแก้ไขโค้ดแล้วต้อง compile ไฟล์ก่อนไปเปิด webbrower **
URL : localhost/cgi-bin/newfilename.cgi
ภาพที่ได้จากโค้ด