» נושאי לימוד
» נושאי לימוד
יום שלישי 19 במרץ 2024
CGI וטפסים
דף ראשי  בניית אתרים  CGI סקריפטס  CGI וטפסים גרסה להדפסה

CGI וטפסים                                   

כעת נבחן שימוש נפוץ מאוד ל CGI סקריפטס, עיבוד קלט משתמש דרך טפסים. נתחשב הן בשפת C והן בשפת פרל בדוגמאות שנביא לבעיה.


דוגמא פשוטה

 

שימוש נפוץ לתכנות ב CGI הוא עיבוד מידע שהוקלד לתוך טופס בעמוד אינטרנט. למשל בדוגמא שלפנינו, על מנת לבחון את הדוגמא, הקלד מלל כלשהו לתוך תיבת המלל הריקה ולחץ על הכיתוב לשליחת המלל. אתה אמור לראות  עמוד חדש נפתח .

 

 

הקלד מלל לתיבה זו:

לחץ כאן לשליחת המלל.

 


שים לב לשתי הפעולות שהתבצעו בתוכנית זו. ראשית, מלל מוקלד אל הטופס, ושנית המלל מועבר לתוכנית שמעבדת אותו. במקרה שלנו, העיבוד הוא פשוט, בסך הכל לא נעשה שימוש במידע .אך סקריפט CGI יכול לעשות הרבה יותר מזה, כמו שנראה בקרוב.


התג FORM

 

הטופס עצמו נוצר ע"י HTML בלבד, אם כי נעשה שימוש בכמה פקודות HTML שעוד לא טיפלנו בהן. הטופס נוצר בתוך התג FORM שמשתמש בפקודות שונות לייצר אלמנטים ייחודיים לכל טופס( שדות מלל, כפתורים וכו') .

 

הקוד שמאחורי טופס זה הוא:

 

 

<FORM METHOD="POST" ACTION=
"http://csep10.phys.utk.edu/cgi-bin/post-query">
הקלד מלל לתיבה זו:
<INPUT NAME="entry"> 
לחץ כאן לשליחת המלל: 
<INPUT TYPE="submit"
VALUE="Submit Query">.
</FORM>

 

 

לעומת זאת, התוכנית שמעבדת את המלל שמוקלד לתוך הטופס אינה בשפת HTML .במקרה הזה, מדובר בתוכנית בשפת C שיושבת בתת הספרייה  cgi-bin  שנמצאת בתוך הספרייה בה מותקנת תוכנת השרת במחשב עם הכתובת  csep10.phys.utk.edu .
שים לב שהטופס משתמש בערך המוכנס ל "= ACTION"   על מנת לקבוע באיזו תוכנית עליו להשתמש לעיבוד המידע שנשלח מהטופס.

 

מידע נוסף על בניית טפסים

 

אם אתה מעונין ללמוד עוד על בניית טפסים באמצעות HTML תוכל להתחיל בקישור הבא.


תוכל ללמוד על סוגים שונים של אזורי מלל, ותראה אלמנטים נוספים שתוכל להוסיף לטפסים שלך כמו: תיבות סימון, כפתורי רדיו ורשימות נגללות. שים לב שלצורך עיצוב הטופס, ללא עיבוד המלל, אתה יכול להשתמש כבסיס בכל אחת מהדוגמאות שהובאו.

 

 

דוגמא שמטפלת בטפסים תמצא באתר של NCSA.

 

דוגמאות מורכבות

 

דוגמא לטופס מורכב יותר ממה שראית עד כה הוא בוחן מדעים מקוון. דוגמא דומה מאותו אתר היא בוחן באסטרונומיה.
אם תשתמש בדפדפן שלך על מנת לראות את קוד המקור של אחד הבחנים(באחד העמודים בבוחן ששואל שאלה, לא עונה תשובה), תבחין בשורה:

 

<form method="post" action="/cgi-bin/quizforms/galileo/qa.pl">

 

משורה זו אנו למדים שהמידע שנקלט בטופס מעובד ע"י תוכנית שנקראת qa.pl שנמצאת על אותו מחשב עליו שמור הבוחן עצמו, ולכן אין url מלא אחרי ה = action .

 

התוכנית הזו נכתבה בשפת פרל במיוחד בשביל לטפל במידע הנקלט מהטופס הזה. התוכנית לא רק מחזירה את אותו המלל שנקלט, אלא לוקחת את המלל ומחלצת ממנו את החלק שמהווה את התשובה לשאלה. לאחר מכן, התוכנית משווה את התשובה לתשובה הנכונה ,שמאוכסנת במאגר מידע תחת השרת, ופותחת עמוד מתאים בהתאם לנכונות התשובה. דוגמא זו ממחישה את היכולות המתקדמות יותר של CGI  סקריפטס.

 

 

 

 

 

 

 

 16-01-04 / 15:20  עודכן ,  23-09-03 / 15:25  נוצר ע"י עזרא גנוט  בתאריך 
 בחירת שפה - הקודםהבא - שפות סקריפט נוספות 
תגובות הקוראים    תגובות  -  0
דרכונט
מהי מערכת הדרכונט?
אינך מחובר, להתחברות:
דוא"ל
ססמא
נושאי לימוד
חיפוש  |  לא פועל
משלנו  |  לא פועל
גולשים מקוונים: 4