ציטוט:
נכתב במקור על ידי ProStudio.co.il
ייש לי עוד שאלה
אני מחפש מישהו שיודע לכתוב בקוד PHP
דוגמא:
התחברתי ממשתמש לאתר מסוים
וברגע שאני רוצה להתחבר ממחשב אחר לאותו משתמש אז פשוט שזה יעיף את המשתמש הראשון שמחובר
בדומה לפייסבוק
האם מישהו פה יודע לעשות דבר כזה ?
|
במסד נתונים בטבלה של המשתמשים תוסיף עוד שדה שבסופו של דבר יכיל קוד רנדומלי
תקרא לשדה לדוגמא hash
כשהמשתמש מתחבר תיצור קוד רנדומלי
סתם לדוגמא (אתה יכול ליצור את הקוד איך שבא לך, העיקר חשוב שיהיה יחודי):
קוד:
$hash = md5(rand(1,9999)."This is my unique hash".uniqid());
כשהמשתמש מתחבר אתה שומר את הקוד HASH הזה ב SESSION/COOKIE וגם עושה UPDATE לשדה HASH שיצרת ברשומה של אותו משתמש (בין היתר עם עוד מה שאתה צריך)
לאחר מכן אתה מוודא תמיד שה HASH ב COOKIE/SESSION זהה לשדה HASH של המשתמש בטבלת משתמשים,
אם לא אתה מנתק אותו, אם זהה אז אתה משאיר אותו מחובר (או לא עושה שום פעולה יותר נכון).
עכשיו אם תיכנס למחשב אחר (או דפדפן אחר) ותתחבר למשתמש מחדש, מה שיקרה זה שיווצר קוד HASH חדש ויעשה UPDATE לרשומה של המשתמש במסד ואז הקוד HASH של המשתמש הראשון לא זהה וזה ינתק אותו ברגע שהוא ינסה להיכנס לאתר עם אותו פרטי משתמש.
מקווה שהבנת
ערב טוב.