![]() |
# 1 |
חבר מתקדם
|
התחברות לאתר?
הי,
יש לי טופס התחברות, לצורך הענין נקרא לו login.php בטופס ישנם השדות שם משתמש + סיסמא בלבד. נניח והמשתמש עבר בהצלחה את פרוצדורת הזיהוי, איך ניתן לזכור אותו בכניסות הבאות שלו לאתר? יש את set cookie אבל אני קצת מסתבך עם זה. כמו כן רציתי לדעת איך לSeasion_start יש קשר לכל הסיפור תודה לעוזרים! שב"ש ![]() |
![]() |
![]() |
# 2 |
חבר מתקדם
|
אז זה הולך ככה ..
אחרי שהמשתמש עבר את הזיהוי אתה מייצר לו סיישן ככה : PHP קוד:
קוד:
$_POST["user"] אם אתה רוצה לבדוק האם המשתמש התחבר תעשה ככה : PHP קוד:
![]()
__________________
|
![]() |
![]() |
# 3 |
חבר מתקדם
|
הי ליאור! קודם כל תודה.
![]() לדעתך מאובטח יותר להשתמש בסשן מאשר קוקיז? |
![]() |
![]() |
# 4 |
חבר מתקדם
|
כן .. מכיוון שקוקיז כל אחד שיודע להתעסק קצת יכול לערוך אותו .. מהסיבה הזאת צריך לבנות אבטחה בשבילו..
מהצד השני אתה יכול לשלוט על הזמן שהמשתמש יהיה מחובר ... ובסישן אתה לא יכול
__________________
|
![]() |
![]() |
# 5 |
חבר מתקדם
|
ובהנחה שהמשתמש יצא מהאתר ונכנס אחרי יומיים(מאותו מחשב+דפדפן) - > איך המערכת תזהה אותו? הרי אין לו כלום על המחשב שמעיד על כך (=קוקיז)
אני מקווה שזה לא עפ"י כתובת IP מאחר וזה לא כל כך טוב עבורי. |
![]() |
![]() |
# 6 |
עסק רשום [?]
|
שימוש במערכת הסיישנים המובנית ב- PHP לא עונה על התנאי של פותח האשכול: "איך ניתן לזכור אותו בכניסות הבאות שלו לאתר".
המידע הקיים בסיישן תקף כל עוד הגולש לא סגר את הדפדפן/ איפס את הסיישן, ברגע שהגולש יסגור את הדפדפן ויפתח אותו מחדש הוא יקבל מזהה אחר והמערכת כבר לא תקשר אותו למידע מהסיישן הקודם שלו. תלמד להשתמש בעוגיות, זה ידע בסיסי. |
![]() |
![]() |
# 7 |
חבר מתקדם
|
על פי כך אשתמש בקוקיז.
קוד:
set_cookie("cookie_login","admin"); תודה חברה. |
![]() |
![]() |
# 8 | |
עסק רשום [?]
|
ציטוט:
בקיצור משהו שלא יהיה אפשר לגלות בקלות ולשנות את העוגיה ולפרוץ למשתמש |
|
![]() |
![]() |
# 9 |
חבר וותיק
|
כדי להתחיל SESSION אתה רושם
PHP קוד:
PHP קוד:
כדי להכניס סשן אתה עושה PHP קוד:
שים לב שסשן לא ישמר אחרי יציאה מהדפדפן \ כיבוי המחשב, אם אתה רוצה לזכור פרטים, תוכל להשתמש בעוגיות (עם הצפנה לכל ערך) או לשמור אייפי במסד ולפי זה לפעול Last edited by Haimz; 28-10-11 at 17:34.. |
![]() |
![]() |
# 10 | |
חבר בקהילה
|
ציטוט:
אתה טועה. שוב. וממשיך להטעות אנשים, חבל.. אם אתה לא יודע פשוט אל תנסה לעזור. זיוף Sessions אפשרי בדיוק באותה רמה של זיוף Cookies. אז איך כן תעשה את זה ? - תיצור כפתור CheckBox של "זכור אותי" לדעת אם לשמור את העוגייה במחשב (אולי המשתמש לא משתמש הרגע במחשב שלו?) - בדוק עם המסד נתונים אם המשתמש קיים והסיסמא תקינה במקרה אם כן המשך הלאה. - תגדיר Session במקרה שלא השתמש באופציה "זכור אותי" - במקרה שכן השתמש באופציה "זכור אותי" תגדיר עוגייה - בנוסף את הסיסמא תדאג להצפין באחת מההצפנות המוצעות בPHP לדוגמא: md5, sha1, crc32. נקודות חשובות: שים לב לא להגדיר בצורה הבאה (כמו שהראו לך למעלה): קוד:
$username = $_POST["user"] אתה בודק עם המסד נתונים אם המשתמש קיים והסיסמא שהוזנה נכונה. במקרה של שימוש בצורה הזאת אתה חושף את המסד נתונים שלך להזרקות SQL. על מנת לקרוא עוד על הזרקות SQL: http://www.unixwiz.net/techtips/sql-injection.html אז מה כן אפשר לעשות? השתמש בפונקציה mysql_real_escape_string ! קוד:
$username = mysql_real_escape_string($_POST['user']) Last edited by daNN; 28-10-11 at 18:03.. |
|
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|