בעית קוד ב PHP

backgammon

New member
בעית קוד ב PHP

אני רוצה להכין אתר קטן סתם כי משעמם... יש לי דף ראשי שבתוכו יש אינקלוד לדפי פונקציות והדף הראשי, דהיינו התוכן של האתר. בדף הראשי יש טבלה איפשהו לקראת סוף העמוד, ובטבלה יש אינקלוד לדף שנקרא auth.php ששם צריך להתבצע זיהוי. אם מתבצע הזיהוי (athetication) כמו שצריך, אז הפונקציה Authornicate() הופכת את פרטי המשתמש לגלובלים, ז"א, הנתונים שמתקבלים מהטבלה הופכים לגלובלים. הבעיה היא... (מצטער על ההקדמה המייגעת) שהזיהוי מתרחש רק בסוף בדף, כך שלכאורה המשתמש מזוהה, אבל בפועל, כל הפונקציות שנקראות לפני הזיהוי (כולם) "לא יודעות" שהמשתמש מזוהה, או בעברית:
if (empty($user))​
מחזירה TRUE!! זה הקטע הבעייתי - מה עושים, איך פוטרים? ניסיתי לקרוא לפונקציות אבל זה לא משנה כי הם מתהדרות לפני שנקראת הפונקציה לזיהוי. בבקשה, תודה, אין בעד מה. שלום.
 

תמר,

New member
תבצע זיהוי לפני הקריאה לפונקציות

למיטב ידיעתי, הפונקציות ב-php לא מתהדרות. יכול להיות שהן פשוט לא מכירות את המשתנה user$, ולכן התשובה TRUE נכונה במקרה הזה. הפתרון הפשוט ביותר הוא, להעביר את הערך של user כפרמטר, או להעביר כפרמטר משתנה בוליאני האומר אם התבצע זיהוי או לא.
 
למעלה