Autorius Tema: Del $_POST ir back  (Skaityta 516 kartus)

Neprisijungęs Kshysius

  • Naujokas
  • *
  • Įrašai: 21
  • Karma: +0/-0
    • Žiūrėti profilį
Del $_POST ir back
« Įrašytas: 2012-10-01 11:07:37 am »
Sveiki ar yra galimybe interneto lange kur yra back mygtukas grazinti ne atgal o i kazkoki puslapi? nes po ivestu duomenu vartotojas gali paspausti back mygtuka refresh ir vel bus ivesti jo duoemnys na tiesiog apsisaugojimui

Neprisijungęs Modestas Vaitkevičius

  • Dalyvis
  • **
  • Įrašai: 2005
  • Karma: +56/-16
    • Žiūrėti profilį
    • Apie mane
Ats: Del $_POST ir back
« Atsakymas #1 Įrašytas: 2012-10-01 11:09:29 am »
header("Location: tavo adresas");

Neprisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: Del $_POST ir back
« Atsakymas #2 Įrašytas: 2012-10-01 11:57:51 am »
nespejau rasti tau tinkamo atsakymo, bet siulau paskaityti dar cia:

https://developer.mozilla.org/en-US/docs/DOM/Manipulating_the_browser_history
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs bendzaminas

  • Naujokas
  • *
  • Įrašai: 185
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Del $_POST ir back
« Atsakymas #3 Įrašytas: 2012-10-01 12:48:29 pm »
Redirect'inimas nepadės apsisaugoti tau nuo request'o dubliavimo.

Manualai.lt Forumas

Ats: Del $_POST ir back
« Atsakymas #3 Įrašytas: 2012-10-01 12:48:29 pm »

Neprisijungęs Gintas Kovalevskis

  • Dalyvis
  • **
  • Įrašai: 418
  • Karma: +15/-0
    • Žiūrėti profilį
    • Asmeninis portfolio
Ats: Del $_POST ir back
« Atsakymas #4 Įrašytas: 2012-10-01 14:37:55 pm »
Po viso, formos apdorojimo, scripto išvalyk $_POST kintamąjį (praktiškai nebandžiau, bet manau turėtų suveikti) ir išvengsi užklausos pakartojimo.

$_POST = array();

Nori ir tu tokio paveiksliuko? Apsilankyk FeedMage puslapyje

Neprisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: Del $_POST ir back
« Atsakymas #5 Įrašytas: 2012-10-01 15:27:25 pm »
ai per skubejima neisigilinau pilnai i klausima,  tu nori apsaugos nuo double submit, tai tiesiog i forma idek token'a atsitiktini ir su tuo paciu token leisk tik 1 karta submitinti, tada gales back ar refresh spaudineti, vistiek, jei jau token'as panaudotas - nieko nepavyks submitint.
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs bendzaminas

  • Naujokas
  • *
  • Įrašai: 185
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Del $_POST ir back
« Atsakymas #6 Įrašytas: 2012-10-01 15:33:11 pm »
Po viso, formos apdorojimo, scripto išvalyk $_POST kintamąjį (praktiškai nebandžiau, bet manau turėtų suveikti) ir išvengsi užklausos pakartojimo.

$_POST = array();

$_POST request masyvas visad buna prieš request'ą tuščias. Tavo minėtas būdas tikrai nepadės.

Neprisijungęs Kshysius

  • Naujokas
  • *
  • Įrašai: 21
  • Karma: +0/-0
    • Žiūrėti profilį
Ats: Del $_POST ir back
« Atsakymas #7 Įrašytas: 2012-10-01 17:21:47 pm »
Kaip toks varijantas?
if(isset($_POST["mygtukas"]){
if(isset($_SESSION["token"]) && $_POST["token"] == $_SESSION["token"]){

//darom veiksma

}
}

$token = $_SESSION["token"] = md5(uniqid(mt_rand(), ture));
<form>
<input type="text" name="vardas">
<input type="hidden" name="token" value="<?php echo $token?>" />
<input type="submit" name="mygtukas" >
</form>

Neprisijungęs bendzaminas

  • Naujokas
  • *
  • Įrašai: 185
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Del $_POST ir back
« Atsakymas #8 Įrašytas: 2012-10-01 18:19:59 pm »
Kaip toks varijantas?
if(isset($_POST["mygtukas"]){
if(isset($_SESSION["token"]) && $_POST["token"] == $_SESSION["token"]){

//darom veiksma

}
}

$token = $_SESSION["token"] = md5(uniqid(mt_rand(), ture));
<form>
<input type="text" name="vardas">
<input type="hidden" name="token" value="<?php echo $token?>" />
<input type="submit" name="mygtukas" >
</form>



Principas būtų toks:

http://johnsquibb.com/articles/PHP-security-tips/tokens

Manualai.lt Forumas

Ats: Del $_POST ir back
« Atsakymas #8 Įrašytas: 2012-10-01 18:19:59 pm »