Skip to main content

למד כיצד לאמת טפסים עם JavaScript או CGI

El Camino hacia LA VERDAD (יוני 2026)

El Camino hacia LA VERDAD (יוני 2026)
Anonim

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

קיימות שתי דרכים לאימות הטפסים שלך:

  1. שימוש ב- JavaScript
  2. באמצעות סקריפט CGI

היתרונות של JavaScript באמצעות אימות טפסים

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

החסרונות של שימוש ב- JavaScript לאימות טפסים

  • JavaScript פועל רק בדפדפנים שבהם הוא מופעל. אם ה- JavaScript מושבת, בדיקת השגיאה שלך לא מתבצעת.

היתרונות של CGI באמצעות אימות טפסים

  • שימוש ב- CGI לאימות מבטיח שכל פעם שהטופס נשלח, האימות יפעל.

חסרונות השימוש CGI עבור אימות טפסים

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

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

כיצד להשתמש ב- JavaScript כדי לאמת טפסי HTML

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

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

JavaScript עבור אימות טופס

בחלק הראשי של ה- HTML שלך, עליך ליצור סקריפט כדי לבצע את אימות הטופס:

  1. הגדר את הסקריפט וודא שהוא מוסתר מדפדפנים שאינם יכולים לטפל ב- JavaScript.

לאחר מכן, כדי לקרוא את התסריט, לשים רכיב onsubmit בתג טופס:

CGI עבור אימות טפסים

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

#! / usr / local / bin / perl$ error = "";אם ($ ב- {'dd'} eq ""){ $ error + = "בחר מתוך התיבה הנפתחת.';}אם ($ ב- {'words'} eq ""){ $ error + = "נא לכלול כמה מילים בתיבת הטקסט.';}# … המשך אימות כל השדותאם ($ $ error) "סוג תוכן: טקסט / HTML n n"; הדפס " שגיאה'; הדפס "<> הדפס "

אירעה שגיאה

'; שגיאת $ $; "נא לחזור ולתקן שגיאות אלה."; הדפס "';} else # המשך עם CGI …}

ההבדל עם איך CGI כותב את הודעת השגיאה היא כי במקום n, הוא משתמש בתג פסקה HTML לשים קו חדש בין כל שגיאה.

ועכשיו אתה כבר Validated הטופס שלך

עם שתי השיטות, CGI ו- JavaScript, אימתת טופס HTML כך שחלקים גדולים יותר שנשלחו אליך מדויקים.