forms i back

0

Dzien dobry
Jestem poczatkujacy w PHP i nie wiem jak rozwiazac nastepujacy problem.

Logowanie mam w index.php, robie to na formsie($_POST)
Po wpisaniu danych (loginu i hasla) nastepuje poprawne zalogowanie, jesli
teraz kliknie sie na inna podstrone np. na info.php i z info.php da sie
wstecz (back) to przegladarka wyrzuca informacje

"Uwaga: Strona wygasła Żądana strona została utworzona przy wykorzystaniu
informacji przesłanych w formularzu. Strona nie jest dostępna. Ze względów
bezpieczeństwa, na wszelki wypadek, program Internet Explorer nie przesyła
ponownie informacji."

Podobny problem mam w kilku bardzo podobnych przypadkach, wystepuje on zawsze gdy po wywolaniu formsa na jednej podstronie, przejdę na inna i dam wstecz.

Przyklady bledow w skrocie
index.php -> submit(forms) -> jest ok -> info.php -> back -> bład
koszyk.php -> usun cos (forms) -> jest ok -> abaut.php -> back -> blad

Wiem ze mozna to rozwiazac korzystajac z $_Get, o ile w usun to by sie
jeszcze dalo zrobic, <ort>chodz </ort>by bardzo skomplikowalo url'a to w logowaniu jest
to niedopuszczalne.

Jesli ktos ma jakis pomysl jak to rozwiazac to prosze o pomoc

pozdrawiam

0

Sztuczka (dzięki ŁF) polega na tym, że przeglądarki nie zapamiętują na stosie historii stron które są przekierowaniem. Czyli można na przykład cały proces rozbić na takie trzy pliki:

test.html

<html>
<head>
<title>form test</title>
</head>
<body>

<form method="post" action="redirect.php">
	<input type="text" name="name" />
</form>

</body>
</html>

redirect.php

<?php
// odczytaj $_POST i wykonaj operacje na bazie danych
header("Location: result.php");
?>

result.php

<?php
// wyświetl wyniki
?>

Taka jest idea - trzeba ją dostosować do sytuacji.
pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1