Hallo.

Ik ben een site aan het maken met een inlog script.
Het inlog formulier geeft de huidige pagina mee, in dit voorbeeld index.php?page=rwl&id=1.
Ik heb deze data in de variabele $nextpage gezet.
Als ik deze echo staat er gewoon het volledige adres,
maar zodra ik
header("Location: ".$nextpage);
gebruik, kom ik uit op index.php?page=rwl.
Het &id=1 gedeelte wordt dus weggelaten.
Iemand enig idee hoe ik dit kan oplossen?

Mvg Daniel Hartman
Mij is altijd verteld dat een header("Location:") in combinatie met ?page=&id= inderdaad niet ging werken. Waarom ben ik vergeten, en ik heb ook wel eens gehoord dat het toch wel zou kunnen. Wellicht was dat dan alleen voor het ?page= gedeelte, en niet voor het id= gedeelte. Misschien heeft het iets met absolute en relatieve URI's te maken?

Je kan misschien een workaround maken door eerst te redirecten naar ?page, en dan op die pagina verder te redirecten naar ?id=. Andere oplossing is misschien javascript of url rewriten met ModRewrite?
Een include() niet maar een header moet dat toch kunnen.
Ik heb het nu met HTML geprobeerd, namelijk:

?>
<body onLoad="javascript:location='<? echo $nextpage; ?>'">
<?

Dit werkt ook niet.

De link wordt verstuurd door:

<?
$return = str_replace("&","&amp;",$_SERVER['REQUEST_URI']);
?>
@Jelle, werkt niet zoals Henk al zegt. De &amp; wordt niet omgezet, waardoor je wordt doorgestuurd naar een niet-bestaand adres.

@Daniel: laat eens zien hoe je die header had (in PHP natuurlijk).
in php was dat:

<?
header("Location: ".$nextpage);
?>

Het staat nu in HTML, dit geeft hetzelfde, werkt dus ook niet.
Deze werkt bij mij uitstekend, net getest:

<?php
	$page = 'test.php?id=1&a=c';
	header ('Location: ' . $page);
	exit ();
?>    
Ik heb nu:

<?
$return = $_GET['returnurl'];
$nextpage = "http://www.danielhartman.nl";
$nextpage .= $return;
    header ('Location: ' . $nextpage);
    exit ();
?>

Ook dit werkt niet. geeft nog steeds niet de &id=1 mee

Reageren