למה זה לא

gunfor

New member
למה זה לא

function is_login() { if ($_COOKIE['passed']!='true'||$_COOKIE['how']==''||$_COOKIE['time']=='') { header("Location: HTTP://" .$_SERVER['HTTP_HOST'] ."/main/admin/index.php?loc=login"); } }​
למה זה לא בודק אם העוגיות האלו נרשמו או לא פשוט עושה מה זה רוצה או שסתם שם אותי בהמתנה חצי שנה איך אני יוכל לפתור את זה
 

idansof

New member
הניסוח שלך לא ברור

אולי תגדיר יותר טוב את הבעיה: * מה הם התנאים בהם ההתנהגות של הפונקציה לא כמצופה? * מה הפונקציה אמורה לבצע בתנאים הללו? * מה מתבצע בפועל? מעבר לכך יש לדעתי פגם בהתנהגות הפונקציה בהסתמך על שמה, "is_login". הקידומת מצביעה על כך שהפונקציה בודקת תנאי מסוים ומחזירה true/false בהתאמה, ואילו בפועל הפונקציה לא מחזירה דבר. לכן למשל קוד הבא יכשל:
if (is_login()) { // Lot's of code } else { // User is not logged }​
זה אגב אחד החסרונות של שפות דינאמיות בהן אינך חייב(ולא יכול למעשה), להגדיר את סוג המשתנה שהפונקציה תחזיר, אבל זה כבר נושא אחר.
 
למעלה