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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 24-10-08, 03:55   # 1
Jonathan Zeierman
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jun 2007
הודעות: 1,003

Jonathan Zeierman לא מחובר  

עזרה ב- SESSION

שלום לכולם,
אני בונה פאנל ניהול, עכשיו נתקלתי בבעיה..
הבעיה היא כזו:
עשיתי שכאשר מישהו מנסה להגיע לדף שמור שיציג לו שגיאה אתה צריך להכנס לדף...
עשיתי זאת עם ELSE.
קוד הממחיש:
PHP קוד:
else 

    die (
"$erorr");

ועשיתי גם למשל שאם המשתמש ואו הסיסמא אינם נכונים שיציג שם משתמש וסיסמא אינם נכונים.
קוד הממחיש:
PHP קוד:
if ($_POST["user"] !== $user && $_POST["pass"] !== $pass)
{
die (
"שם משתמש וסיסמא אינם נכונים.");

עכשיו הכל עובד כמו שצריך חוץ מדבר אחד, אם המשתמש אכן הכניס שם וסיסמא נכונים תופיע לו ההודעה תהליך התחברות, אנא המתן. אבל אז מצטרפת גם ההודעה שלמי שמנסה להגיע לדף שמור.
האם יש דרך להציג את ההודעה של מי שמגיע לדף שמור דרך משפט IF ולא לעשות ELSE?
PHP קוד:
<?php 
session_start
(); 

include(
"config.php");

if (isset(
$_SESSION['user']) && isset($_SESSION['pass'])) 

    die (
"$menu");


if (
$_POST["user"] == $user && $_POST["pass"] == $pass

    
$_SESSION["user"] = $_POST["user"]; 
    
$_SESSION["pass"] = $_POST["pass"]; 
    echo (
"$process");


if (
$_POST["user"] !== $user && $_POST["pass"] !== $pass)
{
die (
"שם משתמש וסיסמא אינם נכונים.");
}

else 

    die (
"$erorr");

?>
תודה לעוזרים, יוני.
__________________
יונתן.
אימייל: jonathan@zeierman.net

Last edited by Jonathan Zeierman; 24-10-08 at 03:58..
  Reply With Quote
ישן 24-10-08, 09:51   # 2
Elad-A
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 1,987

Elad-A לא מחובר  

תעשה דף login.php בנפרד, ככה לא יסתבך לך הכל..
  Reply With Quote
ישן 24-10-08, 11:41   # 3
vadimg88
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
גיל: 36
הודעות: 710

vadimg88 לא מחובר  

קוד:
if ($_POST["user"] !== $user && $_POST["pass"] !== $pass)
הסימן ==! ו === הם שונים מ =! ו == הראשון בודק גם את הערך גם את הסוג של הערך. השני בודק רק את הערך. סתם לידע כללי.

ולא ממש הבנתי מה הבעיה האמת.
  Reply With Quote
ישן 24-10-08, 17:11   # 4
Jonathan Zeierman
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jun 2007
הודעות: 1,003

Jonathan Zeierman לא מחובר  

אוקיי לא הבנתם מה אני רוצה...
הפונקציה הזו בודקת שאם שם משתמש וסיסמא נכונים שיציג לו תהליך ככה:
"בתהליך התחברות, אנא המתן" ואז התהליך עושה רענן לדף ומעביר אותו לתפריט.
PHP קוד:
if ($_POST["user"] == $user && $_POST["pass"] == $pass
זאת אומרת זהו התפריט:
PHP קוד:
if (isset($_SESSION['user']) && isset($_SESSION['pass'])) 

    die (
"$menu");

עכשיו הכנסתי את הפונקציה הזו בכדי לבדוק האם שם משתמש וסיסמא אינם נכונים, היא עובדת...
PHP קוד:
if ($_POST["user"] !== $user && $_POST["pass"] !== $pass
אבל הבעיה היא שכאשר התנתקתי מהפאנל והרסתי SESSIONS אני מנסה לגשת לדף ישיר שהוא מוגן אז מופיעה לי שגיאה שעשיתי אותה ב- else:
PHP קוד:
else 

    die (
"$erorr");

עכשיו זה גם עובד, אבל כשאני מתחבר לפאנל ומופיעה לי ההודעה של תהליך התחברות אנא המתן גם הודעת השגיאה הזו מופיעה ואני לא רוצה את זה כי זה ב- else...
מקווה שהבנתם...
__________________
יונתן.
אימייל: jonathan@zeierman.net
  Reply With Quote
ישן 24-10-08, 19:46   # 5
Alter
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 34
הודעות: 3,103

Alter לא מחובר  

למה אתה צריך את הelse הזה ? אם מישהו לא הכניס שם משתמש וסיסמא נכונים זה תמיד יראה לו שהם משתמש וסיסמא לא נכונים.. אין סיבה לelse..
__________________
Alter.
  Reply With Quote
ישן 25-10-08, 00:59   # 6
omercnet
אחראי פורום תחזוק שרתים
 
מיני פרופיל
תאריך הצטרפות: Aug 2006
גיל: 36
הודעות: 722

omercnet לא מחובר  

לא עובדים עם DIE, זה ברוטלי מדי, ולא יעיל.
אני לא ממש מצליח להבין מההסבר שלך, נראה שאתה לא מביא את כל הקוד שלך (אולי אתה לא רוצה לשתף אותנו בקוד עצמו?)

אם אני מנסה לפענח את הבעייה שלך, תנסה לעבוד עם switch במקום מלא if
www.php.net/switch
__________________
Omer Cohen
Information Security Specialist
eBaY Inc
  Reply With Quote
ישן 25-10-08, 05:48   # 7
Jonathan Zeierman
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jun 2007
הודעות: 1,003

Jonathan Zeierman לא מחובר  

ציטוט:
נכתב במקור על ידי omercnet צפה בהודעה
לא עובדים עם DIE, זה ברוטלי מדי, ולא יעיל.
אני לא ממש מצליח להבין מההסבר שלך, נראה שאתה לא מביא את כל הקוד שלך (אולי אתה לא רוצה לשתף אותנו בקוד עצמו?)

אם אני מנסה לפענח את הבעייה שלך, תנסה לעבוד עם switch במקום מלא if
www.php.net/switch
הצלחתי לעשות מה שאני רוצה... פשוט עשיתי שאם הסשיין מגלה שאתה לא מחובר ז"א FALSE תציג לו את ההודעת שגיאה של דף מוגן זהו זה מה שרציתי שיהיו 2 הודעות של אחד עם הוא לא מכניס שם משתמש וסיסמא נכונים שיציג לו שם משתמש וסיסמא לא נכונים ואם הוא מנסה להגיע לאזור שמור אז שתוצג לו הודעה אחרת.
ציטוט:
לא עובדים עם DIE, זה ברוטלי מדי, ולא יעיל.
למה ברוטלי ולא יעיל?
תודה לעוזרים.
__________________
יונתן.
אימייל: jonathan@zeierman.net
  Reply With Quote
ישן 25-10-08, 12:35   # 8
omercnet
אחראי פורום תחזוק שרתים
 
מיני פרופיל
תאריך הצטרפות: Aug 2006
גיל: 36
הודעות: 722

omercnet לא מחובר  

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

DIE (לדעתי לפחות) משמש למקרי קיצון, בעיות שאם לא תעצור עכשיו, זה סתם יעשה בלאגן בשאר הקוד, כמו למשל שאילתה שלא יוצאת טוב (וגם אז, זה לא צריך להיות DIE מיידי, אלא הודעת שגיאה חביבה כחלק מעיצוב, בטח שלא לזרוק למשתמש את הMysql_error)

תעשה לך פונקציה שמציגה את העמוד הרגיל שלך עם הודאת שגיאה נורמאלית, ולא עמוד לבד שאומר ERROR !@#
__________________
Omer Cohen
Information Security Specialist
eBaY Inc
  Reply With Quote
ישן 25-10-08, 20:55   # 9
Jonathan Zeierman
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jun 2007
הודעות: 1,003

Jonathan Zeierman לא מחובר  

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

DIE (לדעתי לפחות) משמש למקרי קיצון, בעיות שאם לא תעצור עכשיו, זה סתם יעשה בלאגן בשאר הקוד, כמו למשל שאילתה שלא יוצאת טוב (וגם אז, זה לא צריך להיות DIE מיידי, אלא הודעת שגיאה חביבה כחלק מעיצוב, בטח שלא לזרוק למשתמש את הMysql_error)

תעשה לך פונקציה שמציגה את העמוד הרגיל שלך עם הודאת שגיאה נורמאלית, ולא עמוד לבד שאומר ERROR !@#
על מה אתה ממליץ?
__________________
יונתן.
אימייל: jonathan@zeierman.net
  Reply With Quote
ישן 26-10-08, 01:09   # 10
omercnet
אחראי פורום תחזוק שרתים
 
מיני פרופיל
תאריך הצטרפות: Aug 2006
גיל: 36
הודעות: 722

omercnet לא מחובר  

ציטוט:
נכתב במקור על ידי omercnet צפה בהודעה
תעשה לך פונקציה שמציגה את העמוד הרגיל שלך עם הודאת שגיאה נורמאלית, ולא עמוד לבן שאומר ERROR !@#
.
__________________
Omer Cohen
Information Security Specialist
eBaY Inc
  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. הזמן כעת הוא 18:52.

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