Redirect Файл Проблем

victtorio

Registered
Здравейте . Значи използвам системата на Легендата за Зеления Дракон , обаче става следния проблем . Когато някой играч умре и опита да се съживи после ми излиза бял екран който пренасочва към badnav.php и пише Click Here и като го цъкнеш пак отиваш на бял екран който няма нищо. Файла badnav пренасочва от redirect.php . Преди време едно приятелче ми беше оправил бъга , но сега нямам връзка със него ... Ето преди какво ми беше казал как се оправя файла ! Цитирам :

header-а не пренасочва правилно
и го заменям с html
щото хедър не може да се слага
ако в кода има html
а то има
и за това пренасочвам с мета refresh

Ето и файла redirect.php за който става на въпрос :

PHP:
<?php
// translator ready
// addnews ready
function redirect($location,$reason=false){
	global $session,$REQUEST_URI;
	// This function is deliberately not localized.  It is meant as error
	// handling.
	if ($location!="badnav.php"){
		$session['allowednavs']=array();
		addnav("",$location);
	}
	if (strpos($location,"badnav.php")===false)
		$session['output']=
			"<a href=\"".HTMLEntities($location)."\">Click here.</a>";
	restore_buff_fields();
	$session['debug'].="Redirected to $location from $REQUEST_URI.  $reason<br>";
	saveuser();
	@header("Location: $location");
	echo "<html><head><meta http-equiv='refresh' content='0;url=$location'></head></html>";
	//echo "<a href='$location'>$location</a><br><br>";
	//echo $location;
	//echo $session['debug'];
	exit();
}
?>


Ако някой разбира за какво става на въпрос ако може да оправи файла ще съм много благодарен :( .
 
Еми дебъгни и виж какво ти е $location, явно си задал грешен път, от мястото където извикваш съответната функция.
 
Нямам си никаква идея за какво става на въпрос ... за това ако някой може да редактира файла .. знам ли ... кое какво трябва да направя не знам
 
Ние няма как да знаем какво е. Направи следното, промени тази част така:

PHP:
//@header("Location: $location");
//echo "<html><head><meta http-equiv='refresh' content='0;url=$location'></head></html>";
echo "<a href='$location'>$location</a><br><br>";
echo $location;
echo $session['debug'];

И кажи какво ти изкарва, за да видим какво е зададено за локейшън.
 
PHP:
<?php
// translator ready
// addnews ready
// mail ready
define("OVERRIDE_FORCED_NAV",true);
require_once("common.php");
require_once("lib/villagenav.php");

tlschema("badnav");

if ($session['user']['loggedin'] && $session['loggedin']){
	if (strpos($session['output'],"")){
		checkday();
	}
	while (list($key,$val)=each($session['allowednavs'])){
		//hack-tastic.
		if (
			trim($key)=="" ||
			$key===0 ||
			substr($key,0,8)=="motd.php" ||
			substr($key,0,8)=="mail.php"
		) unset($session['allowednavs'][$key]);
	}
	if (!is_array($session['allowednavs']) ||
			count($session['allowednavs'])==0 || $session['output']=="") {
		$session['allowednavs']=array();
		page_header("Проблем с навигацията");
		if ($session['user']['alive']) {
			villagenav();
			output("Имаш проблем с навигацията, моля върни се в %s.",
					$session['user']['location']);
		} else {
			addnav("Return to Shades", "shades.php");
			output("Your navs are corrupted, please return to the Shades.");
		}
		page_footer();
	}
	echo $session['output'];
	$session['debug']="";
	$session['user']['allowednavs']=$session['allowednavs'];
	saveuser();
}else{
	$session=array();
	redirect("index.php");
}

?>


Ето го ? какво може да му е ? Много ще съм благодарен ако помогне някой ...
 

Back
Горе