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

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

   
|!|

סגור את ההודעה
 
כלים לאשכול תצורת הצגה
ישן 08-08-06, 12:49   # 1
ofek_golan
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
גיל: 32
הודעות: 414
שלח הודעה באמצעות ICO אל ofek_golan שלח הודעה באמצעות AIM אל ofek_golan שלח הודעה באמצעות MSN אל ofek_golan שלח הודעה באמצעות Yahoo אל ofek_golan Send a message via Skype™ to ofek_golan

ofek_golan לא מחובר  

[PHP] מערכת התחברות

או קי אני עשיתי במסד 3 תאים
username
password
level

עשיתי שיש 3 רמות מנהל זה לבל 4
רסלייר זה לבל 3
משתמש זה לבל 2

עכשיו לכל אחד שמתי משתמש בניפרד
ושמתי לפי הסדר הלבל הבא:
2
3
4
כלומר הסדר שכתוב במסד זה המשתמש ראשון והמנהל אחרון..

עשיתי הוצאת נתון מהמסד בצור ההבאה:
PHP קוד:

include "config.php";

$query mysql_query("SELECT username,password,level FROM users"); 
while (
$row mysql_fetch_array($query))
{
$username $row["username"];
$password $row["password"];
$level $row["level"];

וכל הזמן שאני מנסה להיכנס רק המשתמש של המנהל עובד לי
לא יודע למה
__________________
למעוניינים
אי סי קיו: 200986456
מסנג'ר בפרטי
 
ישן 08-08-06, 13:08   # 2
Elad-A
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 1,987

Elad-A לא מחובר  

אתה רוצה שכל המשתמשים יוכלו להיכנס?
 
ישן 08-08-06, 13:54   # 3
Alon.R
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,435

Alon.R לא מחובר  

ואיך הקוד שהבאת מתקשר להתחברות כמנהל/ריסיילר/משתמש?

דבר ראשון אני לא הבנתי למה אתה צריך while אם זה להתחברות, אז אתה צריך רק שורה אחת בשביל לאמת נתונים.

בכלליות אני יסביר לך איך אמור לעבוד ההתחברות.

נשלח טופס עם שם משתמש וסיסמא, אתה מריץ שאילתה בusers שלוקחת את הpassword של אותו משתמש.

אם הpassword שהוקש בטופס שווה למה שהוצאת מהשאילתה - אתה מציב 2 עוגיות:
1. username
2. password

בכל מה שנוגע לpassword תשתמש בהצפנת md5,

ובכלליות, בדף של הפאנל ניהול למשל.. אתה עושה שני מבני בקרה if

PHP קוד:
//במידה ואין להם אחד מהעוגיות של ההתחברות
if($_COOKIE['username'] OR $_COOKIE['password'])
{
 
//פה אתה שולח אותם בחזרה לטופס בטענה שהם אינם מחוברים.
 
}
//במידה ויש להם את שני העוגיות
else
{
 
/*פה אתה מאמת את הנתונים של העוגיות, שוב פעם אותו דבר כמו שהסברתי לך מקודם, לוקח את הערך מהעוגיה של הusername (במקום אז.. מהטופס)
ומאמת הסיסמא שהוצאת מהמסד דרך הusername לסיסמא של העוגיה....
*/
 

בהצלחה!

Last edited by Alon.R; 08-08-06 at 14:01..
 
ישן 08-08-06, 17:36   # 4
HighA
מתאורר / יצא בחוץ
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
גיל: 33
הודעות: 833

HighA לא מחובר  

לא שאלת אותי את זה כשהתחברת, עכשיו הבנתי מה אתה עושה :\
חחחחחחח סבבה
בהצלחה
^^
 
ישן 08-08-06, 18:34   # 5
ofek_golan
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
גיל: 32
הודעות: 414
שלח הודעה באמצעות ICO אל ofek_golan שלח הודעה באמצעות AIM אל ofek_golan שלח הודעה באמצעות MSN אל ofek_golan שלח הודעה באמצעות Yahoo אל ofek_golan Send a message via Skype™ to ofek_golan

ofek_golan לא מחובר  

אז אולי תתחבר חח??
ואני כן רוצה שכל המשתמשים יוכלו להתחבר אבל כסוג שונה של חשבון....
ואני לא רוצה לשנות את כל המערכת אלה רק את הקטע של הלקיחת נתון מהמסד והפיכתו למשתנה...
כי אחרי זה אני פשוט משווה בין המשתנים
__________________
למעוניינים
אי סי קיו: 200986456
מסנג'ר בפרטי
 
ישן 08-08-06, 18:48   # 6
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי Alon.R
ואיך הקוד שהבאת מתקשר להתחברות כמנהל/ריסיילר/משתמש?

דבר ראשון אני לא הבנתי למה אתה צריך while אם זה להתחברות, אז אתה צריך רק שורה אחת בשביל לאמת נתונים.

בכלליות אני יסביר לך איך אמור לעבוד ההתחברות.

נשלח טופס עם שם משתמש וסיסמא, אתה מריץ שאילתה בusers שלוקחת את הpassword של אותו משתמש.

אם הpassword שהוקש בטופס שווה למה שהוצאת מהשאילתה - אתה מציב 2 עוגיות:
1. username
2. password

בכל מה שנוגע לpassword תשתמש בהצפנת md5,

ובכלליות, בדף של הפאנל ניהול למשל.. אתה עושה שני מבני בקרה if

PHP קוד:
//במידה ואין להם אחד מהעוגיות של ההתחברות
if($_COOKIE['username'] OR $_COOKIE['password'])
{
 
//פה אתה שולח אותם בחזרה לטופס בטענה שהם אינם מחוברים.
 
}
//במידה ויש להם את שני העוגיות
else
{
 
/*פה אתה מאמת את הנתונים של העוגיות, שוב פעם אותו דבר כמו שהסברתי לך מקודם, לוקח את הערך מהעוגיה של הusername (במקום אז.. מהטופס)
ומאמת הסיסמא שהוצאת מהמסד דרך הusername לסיסמא של העוגיה....
*/
 

בהצלחה!

MD5 אפשר לפרוץ בדיי קלות עם הכלים המתאימים, לאבטחה מוגברת רצוי להשתמש במחרוזת נוספת המשתנה ממשתמש למשתמש
ולעשות משהו בסגנון של
md5(userpassword.key)
יש הרבה אפשרויות לאבטחה אבל MD5 לבד לא מספיק
 
ישן 08-08-06, 19:04   # 7
ofek_golan
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
גיל: 32
הודעות: 414
שלח הודעה באמצעות ICO אל ofek_golan שלח הודעה באמצעות AIM אל ofek_golan שלח הודעה באמצעות MSN אל ofek_golan שלח הודעה באמצעות Yahoo אל ofek_golan Send a message via Skype™ to ofek_golan

ofek_golan לא מחובר  

אפשר לחזור לנושא?
__________________
למעוניינים
אי סי קיו: 200986456
מסנג'ר בפרטי
 
ישן 08-08-06, 19:14   # 8
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

PHP קוד:
<html>
SELECT FROM users WHERE username='$_POST[username]' AND password='$_POST[password]' 
ואז אתה בודק אם הוא החזיר שורות
mysql_num_rows
ואם כן אז המשתמש קיים
 
ישן 08-08-06, 19:57   # 9
ofek_golan
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
גיל: 32
הודעות: 414
שלח הודעה באמצעות ICO אל ofek_golan שלח הודעה באמצעות AIM אל ofek_golan שלח הודעה באמצעות MSN אל ofek_golan שלח הודעה באמצעות Yahoo אל ofek_golan Send a message via Skype™ to ofek_golan

ofek_golan לא מחובר  

אני לא רוצה לשנות אני עשיתי קובץ בשם GLOBALS שמה הוא ממיר נתון ממסד למשנה ובPHP הוא משווה בינהם אני לא רוצה לשנות עכשיו הכל ... רק את קובץ GLOBALS
__________________
למעוניינים
אי סי קיו: 200986456
מסנג'ר בפרטי
 
ישן 08-08-06, 20:25   # 10
Alon.R
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,435

Alon.R לא מחובר  

ציטוט:
נכתב במקור על ידי RS324
MD5 אפשר לפרוץ בדיי קלות עם הכלים המתאימים, לאבטחה מוגברת רצוי להשתמש במחרוזת נוספת המשתנה ממשתמש למשתמש
ולעשות משהו בסגנון של
md5(userpassword.key)
יש הרבה אפשרויות לאבטחה אבל MD5 לבד לא מספיק
חחחחחח מה שתגיד, עדיין לא שמעתי על מישהו שהצליח לפצח את המפתח ההצפנה הזה.

ואם אתה כבר מדבר, בוא נראה אם יש לך משהו מאחורי הדברים, תתן לי את הערך הלא מוצפן של הערך הזה:

קוד:
2924a4686bd638be54deadfec7e5a27d
ואז אני יאמין..

ציטוט:
נכתב במקור על ידי RS324
PHP קוד:
<html>
SELECT FROM users WHERE username='$_POST[username]' AND password='$_POST[password]' 
ואז אתה בודק אם הוא החזיר שורות
mysql_num_rows
ואם כן אז המשתמש קיים
דבר ראשון זה טיפשי,
ככה אתה לא יודע אם אין כזה משתמש או שפשוט הסיסמא לא נכונה.
כמו שאמרתי הוא צריך להוציא את הpassword מusers איפה שהמשתמש שווה למה שהוא כתב בטופס.
ואז לבדוק עם mysql_num_rows אם הוא הוא מצא משו', אם לא סימן שהמשתמש לא קיים.
במידה וכן הוא מצפין את מה שהלקוח כתב בשדה של הסיסמא ומשווה אותו למה שהוא מצא מהשאילתה שהוא הריץ.
במידה וזה נכון הוא מציב עוגיות - מחובר.

וזאת השיטה הכי נכונה, סמוך עליי כבר בניתי כמה מערכות עם התחברות וחלקם גם יותר מתוחכמות מהתחברות כזאת פשוטה, אני לא בא להתלהב אני רק אומר שאני יודע מה שאני אומר...

Last edited by Alon.R; 08-08-06 at 20:29..
 
סגור את ההודעה

חברים פעילים הצופים באשכול זה: 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. הזמן כעת הוא 07:12.

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