2012-03-25 13 views
1

Ist es möglich, einen Parameter an einen PHP-Header-Speicherort anzuhängen? Ich habe Probleme, es zur Arbeit zu bringen. Ist diese Syntax tatsächlich erlaubt?PHP Header-Position mit Parameter

$qry = $_SERVER['QUERY_STRING']; 
header('Location: http://localhost/blast/v2/?$qry ') ; 

es wird einfach nicht $ qry mit seinem tatsächlichen Wert ersetzen .... warum ??

im Browser wie folgt aussehen es endet:

http://localhost/blast/v2/ $ qry

dank

+3

Das ist fundamentales Zeug, lies hier: http://php.net/manual/en/language.types.string.php –

Antwort

14

Ändern Sie die einfache Anführungszeichen doppelte Anführungszeichen:

header("Location: http://localhost/blast/v2/?$qry"); 

Eine einzelne Zeichenfolge in Anführungszeichen in PHP wird als String-Literal behandelt, die nicht für Variablen analysiert wird. Doppelte Strings in Anführungszeichen sind, die für Variablen geparst werden, also erhalten Sie, was auch immer enthält, angehängt statt wörtlich .

+0

Du bist ein Star! Danke! – raoulbia

+0

Ich versuche dieses 'header (" Location: http: //example.com/file.php?id= $ ID ");' aber der header() fügt ein '/' am Ende von '$ ID' hinzu und es zu einem Verzeichnis machen. Das ist es riderects zu 'http://example.com/file.php?id=5/'(Notieren Sie das/am Ende) Bitte geben Sie eine Lösung –

+2

Stellen Sie eine neue Frage, die Ihr Problem im Detail erklärt. Entführe nicht die Kommentare eines Beitrags – Bojangles

2

Sie können auch mehrere Parameter über einen Header wie hinzufügen:

$divert=$row['id']."&param1=".($param1)."&param2=".($param2); 
header("Location:showflagsab.php?id=$divert"); 

, die die beiden zusätzlichen Paramater zur ursprünglichen ID fügt

Diese können über die $get Methode an ihrem Bestimmungsort extrahiert werden

+0

Mr.Howard .. Ich brauche Ihre Hilfe in Ihrem ans-Code..Ihr ans sendet einzelne Datensätze, aber im Falle, wenn es einige doppelte Datensätze als, wie Sie das in anderen Seite speichern. –