הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 01-10-06, 15:55   # 1
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי Pilmen
מה הכוונה סשן בתוך DB? אפשר הסבר?
עקרונית הם לא משתמשים ב SESSION_START

הם מזהים אותך לפי דפדפן, איפי , קוקיז אם יש + עוד כמה פרמטרים
ויוצרים לך מעיין SESSION מדומה שנמצא בתוך המסד שלהם
וככה עבור כל המשתמשים
כלומר הם לא משתמשים במה ש PHP נותן.
אלה בנו פונקציות לעצמם

לדרך הזאת יש הרבה יתרונות מול מעט חסרונות לפי דעתי
אני גם משתמש בדרך הזאת.
  Reply With Quote
ישן 01-10-06, 16:31   # 2
-VladK-
הוסטסניון
 
-VladK-'s Avatar
 
מיני פרופיל
תאריך הצטרפות: Apr 2006
גיל: 34
הודעות: 2,182

-VladK- לא מחובר  

ציטוט:
נכתב במקור על ידי RS324
עקרונית הם לא משתמשים ב SESSION_START

הם מזהים אותך לפי דפדפן, איפי , קוקיז אם יש + עוד כמה פרמטרים
ויוצרים לך מעיין SESSION מדומה שנמצא בתוך המסד שלהם
וככה עבור כל המשתמשים
כלומר הם לא משתמשים במה ש PHP נותן.
אלה בנו פונקציות לעצמם

לדרך הזאת יש הרבה יתרונות מול מעט חסרונות לפי דעתי
אני גם משתמש בדרך הזאת.
וואלה...אתה יכול להסביר לי על השיטה יותר בפירוט?
  Reply With Quote
ישן 01-10-06, 17:12   # 3
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי Pilmen
וואלה...אתה יכול להסביר לי על השיטה יותר בפירוט?
אממ, תחשוב על מה שמייחד כל משתמש שנכנס לדף....

אין הרבה אבל מה שיש זה מספיק :
עקרונית זה ככה :
כל דפדפן מזוהה ב PHP , כמו כן מערכת הפעלה
IP
וזהו לא עולה לי לראש עכשיו
עכשיו מה אתה בעצם צריך בטבלה של סשיינים עבור התחברות
וזה הולך ככה :
sessionid,useragent,userip,lastvisit,userid

וזהו בעיקרון
עכשיו לפירוט
sessionid = md5(random string);
זה עבור ייצור של HASH זה שווה ערך ל PHPSESSIONID או בקיצור SID
עכשיו useragent זה מערכת הפעלה ודפדפן וזה נמצא באחד המשתנים הגלובילים נדמה לי $_SERVER
אותו דבר לגבי IP
עכשיו למה אתה צריך את LASTVISIT ? לדוגמא אני רוצה לקבוע ש SESSION תפוג לאחר שעה
אז מכניסים ל LASTVISIT את time() שזה זמן בשניות ואז בשביל לבדוק אם ה SESISON תקף
אתה עושה משהו בסגנון
if (time() > $db_session['lastvisit']+3600)
כלומר במילים אחרות אם הזמן הנוכחי גדול מהזמן שמצויין ב DB + שעה (3600 שניות = שעה)
אז הוא לא תקף ואז אתה מוחק אותה או משהו
אחרת הסשיין תקף ואתה יכול להשתמש בו
עכשיו האחרון זה USERID בבררית המחדל שלו תהיה 0 וכשמשתמש מתחבר למערכת
בעזרת סקריפט חיצוני אחר לודגמא login.php אז אתה מעדכן את ה ID שלו מתוך מערכת משתמשים שקיימת אצלך
וזהו בעיקרון
זה הבסיס
אתה צריך רק לפתח את זה לפי הצרכים שלך
לדוגמא : אתה יכול להוסיף location שזה בעצם המיקום של המשתמש במערכת

לדוגמא מערכת VB משתמשים ב LOCATION ואז אם יכולים להגיד לך מי צופה בפורום כעת
או מי צופה בטרייד שאתה נמצא בו

זה מאד חמוד...

עכשיו תוסיף לזה את האפשרות של הקוקיז
אתה צריך לכתוב קצת הרבה שורות קוד אבל זה משתלם
אני בניתי מערכת כזאת
שנותנת לך את כל הפרטים על המשתמש כולל הרשאות של מה הוא יכול לעשות ומה לא
בעזרת 2-3 שאילתות שזה ד"א הרבה יותר מהיר מעבודה מול קבצים עם משתנים גלובלים

אני אתן לך דוגמא קטנה למה זה יותר מהיר :
תחשוב שיש 10 אתרים שיש להם 5000 מבקרים ביום לכל אתר וכולם משתמשים ב SESSION שמובנה ב PHP
עכשיו PHP שומר את כל הנתונים שלו - בתיקייה אחת ששייכת ל SESSIONS בקבצים
ועכשיו תחשוב שהוא צריך לחפש את הסשיין של יוזר אחד ולהתאים אותו אליו מבין כל הקבצים שנמצאים....
נכון זה מהיר וככה PHP עובדת, אבל עם DB זה יהיה הרבה יותר מהיר כי זה ייחודי רק לך.
מה גם שמסד נתונים הרבה יותר מהיר בעבודה שלו מאשר עבודה במערכת קבצים.
וזה בדוק.

גם יש לך הרבה מאד אפשרויות לעשות.
אחד החסרונות היותר בולטים הם שאתה לא יכול פתאום להוסיף סתם משתנים לסשיין
לדוגמא sesion[timeilookedonindexpage] לא תוכל להוסיף בקלות
אבל כשמתכננים מראש מערכת , לא יהיה לך גם צורך
ובמקרה הכי גרוע אפשר להוסיף עוד שדה לטבלה שיכיל מה שאתה רוצה

בקיצור האפשריות הם בלתי מוגבלות
אבל כמו שאמרתי קל זה לא כלכך
אז אני ממליץ לך לעשות רק אם אתה ברמה בינונית+ ב
PHP
ולא רק מתחיל.

בהצלחה
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 21:36.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ