![]() |
{מדריך} אימות טפסים, הסברים על הדרכים השונות!
ידע מוקדם
קצת js והרבה html ישנם כמה דרכים איכריות לאימות טפסים שנישלחים ע"י תגית הform והם: 1. בצד שרת (כמו רוב במתכנתים שאני מכיר!), 2. להשתמש בJS ולהקפיץ POP-UP, 3.שימוש בDHTML כל מיני סיבות למה להשתמש ולמה לא: השיטה הראשונה והמוכרת: *מהיר כל לשימוש ולא דורש למידה של שפה נוספת *לוקח עוד תעבורה(לא ממש הרבה אבל זה עדיין נקודה חשובה) ויש עוד אבל הם לא ממש חשובות לנושא זה. השיטה השניה: *לא לוכח תעבורה מעצבן תמשתמש ואלול ליגרם לו ליברוח השיטה השלישית שאותה אני ילמד היום: *לא לוכח תעבורה *לא מקפיץ שום POP-UP *קל לשימוש *יפה למראה יש צורך לילמוד קצת CSS וJS - ממש קל לדעתי והיום אני ילמד אותכם את השיטה השלישית הכי טובה! 1 קודם ניפתח דף חדש: HTML קוד:
<html> ואז נפתח קוד JS ובתוכו פונקציה חדשה שהיא תיבדוק את הטופס: HTML קוד:
<script type="text/javascript"> ואז ניכתוב משתנה שיכיל את תוכן הinput שאנו רוצים ליבדוק אם יש בו תוכן (ואם לא ניכתוב פלט מתאים) HTML קוד:
var username=document.login.username.value login = שם הform (מה שנמצא במאפיין NAME בתגית form) 3.2 השורה הבאה כותבת לתגית span את טקסט השגיאה HTML קוד:
usernameErr.innerHTML="username is require" ונחזיר שלילי כדי שהטופס לא ישלח(כשבאמת יש שגיעה) HTML קוד:
return false חזור על שלב 3 בישביל כל שדה 4 ניכתוב שהפונקציה תחזיר אמת(שהטופס ישלח אם אין שגיאות) וניסגור את התגיות ונתחיל את הbody: HTML קוד:
return true ניכתוב את תגית הטופס HTML קוד:
<form name=login onsubmit="return check()"> 6 ניכתוב input + תגית הspan שבמיקרה שיש שגיאה שם יוצג התוכן של השגיאה HTML קוד:
username: <INPUT TYPE="text" name=username> <font color="red"><span id="usernameErr"></span></font><br/> ונסיים תמסמך HTML קוד:
<input type="Submit" name=Submit value="login>>"> וזהו! הקוד כולו: HTML קוד:
<html> כל הזכויות שמורות לעופרי! כותב המדריך |
אתה משתמש בבדיקה של צד לקוח ואם אני יוצר טופס שעושה POST אליך אני בקלות עובר את כל הבדיקות שלך
בכל מקרה תתקן שגיאות כתיב זה אחד. 2. בדיקה בצד לקוח לא באה במקום בדיקה של צד שרת אלה בנוסף. |
אני יכול להוריד את הטופס למחשב,
למחוק את הבדיקות, בaction לקשר לעמוד הבדיקות בשרת שלך - והופה, בלי שום בעיה. למרות שהדבר יכול להיפתר אם אתה משתמש נכון בסשן טוקן, אבל אני מעדיף לחשוף כמה שפחות את הבדיקות שאני עורך בפני הגולשים. מתאמי אבטחה בדיקות עושים בצד שרת, וזהו. |
מה הקשר ל SESSION ?
אם אתה מספיק חכם אתה יכול לחסום POST משרתים אחרים... לגבי ה SESSION לא שיטה הכי יעילה אבל עובדת... |
ציטוט:
זה פתרון קל ויעיל נגד סוג כזה של "התקפות". |
ציטוט:
ד"א אימות מאוד יעיל עם סשן אפשר לעשות (לא סשן טוקן). |
ציטוט:
אולי אני מכיר את זה בשם אחר ואני לא מסונכרן איתך |
ציטוט:
BlueNosE, על איזו שיטה אתה מדבר שאפשר להשתמש עם סשן? |
ציטוט:
אתה מגדיר סשן בתחילת העמוד עם התוכן XYZ והיידן עם אותו תוכן. יוצר אייפריים נסתר. בתחילת העמוד אתה מפנה את הIFRAME לעמוד שמעדכן את התוכן של הסשן - ועם זה, אתה מעדכן בJS גם את התוכן של הHIDDEN, ודואג שהפעולה תתבצע כל כמה דקות (ככה אם המשתמש הוריד למחשב, הHIDDEN אצלו לא מעודכן). אח"כ כמובן אתה משווה בין השניים. אמנם זה עקיף - כמו כל בדיקת SESSION אחרת - אבל הרבה יותר קשה לשים לב לתוכן של HIDDEN שמשתנה.. |
הבנתי, קצת מסובך,
אבל המשתמש יכול לראות את צורת העבודה הזאת ולהיכנס לעמוד שמעדכן את הסשן בעצמו, לא? |
כל הזמנים הם GMT +2. הזמן כעת הוא 17:49. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ