COOKIES מה הבעיה פה?

yair24

Member
COOKIES מה הבעיה פה?

שלום, יש לי 3 קבצים הנה הראשון:
<? $username = $_POST['username']; $password = $_POST['password']; $isAuth = false; //set to false originally if($username === "yair" && $password === "1") { $isAuth = true; setcookie ("username", "yoyo"); } if($isAuth) { print "logged in successfully<br>"; } else //if login/pass does not exist { print "Wrong username or password"; } ?>​
לקוד הזה אני קורא באמצעות עמוד שיש בו טופס של שם משתמש וססמא. ישלי עוד עמוד שנקרא TEST.PHP וזה הקוד שלו:
<? if (isset($_COOKIES['username'])) { print "Here is the displayed stuff if user is logged in"; } else { print "Not logged in"; } ?>​
אני עושה LOGIN מקבל את ההודעה שהLOGIN בוצע בהצלחה אבל אחרי שאני קורא לעמוד TEST.PHP אני מקבל הודעה של NOT LOGIN מישהו רואה את הבעיה פה? יאיר
 

yair24

Member
שאלה ששאלתי פעם.

לא מזמן שאלתי בקשר לSESSION למה אי אפשר לפתוח SESSION ולהעביר דף באמצעות הפקודה HEADER מיד אחד אחרי השני. אני רואה שבSESSION זה כן אפשרי ופשוט טעיתי. מה שכן אני לא מצליח לעשות SETCOOKIE ולעבור דף ביחד. מה עושים? יאיר
 

yair24

Member
הנה הקוד כדי שתבינו.

<? $result = mysql_query("SELECT * FROM foo",$mysql_link) ; $isAuth = false; while($row = mysql_fetch_array($result)) { $EncryptPass = crypt( $_POST['password'] , $row['Pass'] ); if($row['UserId'] === $_POST['username'] && $EncryptPass === $row['Pass']) { $isAuth = true; setcookie ("username",$_POST['username'],time()+3600*24*365); } } if($isAuth) { header("Location: index.php?page=showtasks"); } else { header("Location: index.php?page=login&err=1"); } ?>​
מה שקורה פה זה שאם הססמא נכונה והשם משתמש נכון אז הוא רושם בCOOKIE ועובר דף. ככה משום מה זה לא עובד לי!! הוא לא מצליח לרשום את הCOOKIE!!! מישהו יודע למה?? דרך אגב אם אני מעיף את השורה שמעבירה דף וסתם כותב שם הודעה אז זה כן עובד, והעוגיה כן נרשמת... יאיר
 
למעלה