redirect werkt online niet

Status
Niet open voor verdere reacties.

patrickphpsql

Gebruiker
Lid geworden
27 sep 2011
Berichten
14
Heb een formulier dat bij submit een pagina oproept om de geg in te voegen in de tabel, werkt = ok.

Op de localhost heb ik op deze insertpagina op het laatst een redirect naar de pagina waar de ingevoegde gegevens te zien zijn. Op de localhost springt hij correct naar de pagina.

header('Location: 0002.uitwisseling.php');

bij het opladen blijft hij echter hangen op de insert pagina, de header w niet uitgevoerd. Waarom werkt de header niet, is er een andere manier die werk top te redirecten naar een pagina.

Bij de header heb ik ook geprobeerd met de volledige link opname http://www.....

wat moet ik doen op dit op te lossen ?
 
header('Location: 0002.uitwisseling.php'); heet het bestand zo? volgens mij heet het bestand uitwisseling.php dus:
header('Location: uitwisseling.php');
en anders heb je een link naar je site of kun je zeggen wat voor mappen je hebt met wat voor bestanden?
 
Ik vind het ook wel een rare naamgeving. Kan je die niet is aanpassen naar 'uitwisseling.php'. Volgens mij doet hij moeilijk over dat puntje. Ben je ook zeker dat de bestandsnaam allemaal kleine letters zijn? Dus niet '0002.Uitwisseling.php'?
 
het heeft waarschijnlijk niks vandoen met de naamgeving, wel met die toestanden van header already sent.
 
Uh ja, als ie zegt "headers already sent" dan zit daar je probleem.

Headers doen het alleen als er absoluut niks aan data naar de browser is gestuurd. Geen spaties, geen <html>, geen warnings, NIKS. Als je "already sent" krijgt is er wel iets gestuurd, je zult dus even uit moeten zoeken wat, en zorgen dat het niet gestuurd wordt.
 
Ik ben er nog niet aan uit waar het hem nu juist ligt. Ik heb de error-melding .php op max gezet. Ik heb wel een andere methode gebruikt om naar een andere pagina te springen, weg van dat header gedoe en dat werkt. Het rare is dat het bij de localhost wel werkt met die headers en online plots niet meer.
 
probeer een de functie op te roepen op de plaats van je header(....

PHP:
<?php
/**
* @author Lieven Roegiers
* @copyright 2007
* @CMS autosite
*/
	function redirect($url){
		if (!headers_sent()){
			//print('Location: http://'.$_SERVER['SERVER_NAME'].$url);
			header('Location: http://'.$_SERVER['SERVER_NAME'].$url);
			die('<meta http-equiv="refresh" content="0;URL=http://'.$_SERVER['SERVER_NAME'].$url.'/>";');
		}else {
			die('Redirect Headers error to send <a href="http://'.$_SERVER['SERVER_NAME'].$url.'" >here the link</a>');
		}
	}
?>
 
die meta is te omzeilen(bij client) maar zie ook 'die' staan dit maakt als je verwijst naar je login en ect er is een fout heeft hij een link weer . en de 'die' bovenaan laat ook geen onderstaande code meer uitvoeren zodat redirect zeker uitgevoerd wordt ook bij simpele browsers zie phones.dit zal ook het geval zijn als header uitgeschakeld zijn toch doorgaat.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan