ביצוע REDIRECT

rozeyoter

New member
ביצוע REDIRECT

שלום. אני משתמש בקוד הבא כדי להפנות לעמוד MENU.PHP שנמצא באותה תיקיה header("Location: http://".$HTTP_SERVER_VARS[´HTTP_HOST´] ."/".dirname($HTTP_SERVER_VARS[´PHP_SELF´]) ."/"."menu.php"); אני מקבל שגיאה. שמתי לב במחרוזת כתובת ה URL שכתובת הבית של השרת מקבלת עוד תיקיות משהו כמו: php/php.exe/ איך אני פותר את הבעיה? (אני מניח שזה משהו בהגדרות השרת). אין דרך אחרת לבצע רדירקט יותר פשוט? בברכה.
 

nirdagan

New member
dirname זה שם הדירקטורי במערכת

הקבצים של המחשב. ולכן הוא שונה מה-path של ה-URL כדי לענות מה לעשות, צריך לדעת מה הסקריפט "יודע" על ה-URL שאליו צריך לעשות redirect ניר
 

rozeyoter

New member
במילים אחרות

מה אני יכול/צריך לעשות? תודה. יש לי גם בעיה בקריאת COOKIES
 

תמר,

New member
נסה את הפונקציה הזאת

Function Redirect($relative_uri) { global $HTTP_HOST,$QUERY_STRING,$REQUEST_URI,$PHP_SELF; if(preg_match("/^http:\/\//",$relative_uri)) { if(!headers_sent()) header("Location: $relative_uri"); else print "<script>\ntop.location = \"$relative_uri\"</script>"; } else { if(isset($QUERY_STRING) && !preg_match("/^\s*$/",$QUERY_STRING)) { $QUERY_STRING = "?$QUERY_STRING"; } $scriptname=preg_replace("/.*\//","",$PHP_SELF); $var = preg_replace("/".preg_quote("$scriptname$QUERY_STRING")."/","",$REQUEST_URI); if(!headers_sent()) header("Location: http://$HTTP_HOST$var$relative_uri"); else print "<script>\ntop.location = \"http://$HTTP_HOST$var$relative_uri\"</script>"; } }​
 
למעלה