16-10-2005, 14:41
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
כמדומני שגם על זה ענו שם, אבל אם זה לא מוןבן מספיק, אנסה להסביר יותר ברור, בכל אופן לגבי הפתרון יתכן שתעזר שם יותר.
ברגע שבמשתנה get, או בתוך משתנה בשפת תסריט צד שרת (כגון javascript), בתוך ערך של שדה מוסתר, או כל צורה אחרת שאתה מעביר יחד עם הדף ללקוח את הערך של השדה שהוא צריך להזין. הלקוח יוכל להעתיק את זה ואז בעצם לבצע הרשמה רובוטית, כי הוא יודע מאיפה בדיוק לקחת את הקוד שהוא אמור להזין.
ננסה להזכר לרגע, מה מטרת הקוד ? כדי שלא יוכלו לעשות הרשמה רובוטית. מעתה כן יוכלו לעשות הרשמה רובוטית, כיון שהקוד שצריך להזין נמצא בתוך משתנה get, בתוך משתנה javascript או שהוא ערך של שדה קלט מוסתר. אז מה הואילו חכמים בתקנתם ?!
לכן כשיוצרים את הקוד האקראי, וכמובן צריך לשמור אותו כדי לבצע בדיקת אימות לאחר הזנת המשתמש, חובה לשמור אותו בצד השרת בלבד ! כי רק לשם הלקוח לא יכול לפנות כדי לבדוק את הקוד.
לכן ההצעה הכי מתאימה היא שמירת הקוד במשתנה session.
(פתרונות נוספים -יעילים בעיקר במקרים של בעיות עם סשן- זה מסד נתונים (בזבזני מדי), או יצירת קובץ מקומי-זמני (גם לא יעיל, אך כמובן מדובר במקרה של בעיה עם סשן)).
בהצלחה
|