webForumDet fria alternativet

Problem med variabler vid redirect

3 svar · 280 visningar · startad av Rödalacket

RödalacketMedlem sedan feb. 20001 160 inlägg
#1

Har en sida med några inmatningsformulär. Submit knappen leder till samma sida (PHP_SELF) och då görs en koll om användarnamnet är upptaget. Om användarnamnet inte är upptaget så skickas man vidare med
header("Location: sida.php"), det är där problemet uppstår...variablerna kommer inte med till den sidan.

Har prövat med
HTTP_POST_VARS['username'], HTTP_GET_VARS['username'], $username, $_POST['username'], $_GET['username']
men det vill sig inte riktigt
Varför?

register_globals = on

SPiNMedlem sedan mars 20005 832 inlägg
#2

Eftersom att sidan som sagt laddas om så måste du skicka med variablerna igen. Lättast är antagligen via GET, men är det känsliga uppgifter så kan man använda fsockopen () och skicka data via POST.

Ex. med GET:

header ( "Location: sida.php?variabel=värde&variabel2=värde2" );

Ex. med POST:

<?php
...
$variabler = "variabel=värde&variabel2=värde2";

$socket = fsockopen ( "www.dinserver.se", 80 );
fputs ( $socket, "POST /sida.php HTTP/1.1\n" );
fputs ( $socket, "Host: [url]www.dinserver.se\n[/url]" );
fputs ( $socket, "Content-type: application/x-www-form-urlencoded\n" );
fputs ( $socket, "Content-length: " . strlen ( $variabler ) . "\n\n" );
fputs ( $socket, $variabler . "\n" );

$returnerat = "";
while ( !feof ( $socket ) )
      $returnerat .= fgets ( $socket, 128 );

echo $returnerat;
?>
RödalacketMedlem sedan feb. 20001 160 inlägg
#3

Tack, misstänkte nästan att det skulle vara nått sånt.
Det är inte några speciellt känsliga uppgifter men fsockopen () såg roligare ut... :)

SPiNMedlem sedan mars 20005 832 inlägg
#4

Det är roligare. :e

Genererad på 374 ms · cache AV · v20260730165559-full.f96bc7eb