Avatar billede horizon Nybegynder
13. februar 2007 - 13:03 Der er 4 kommentarer og
1 løsning

Jeg har slået tilbage-knappen ihjel!

Det er nu officielt, jeg har slået tilbage-knappen ihjel! Nogen der vil hjælpe mig med at rette op på dette?

Jeg sidder og leger med en hjemmeside og er nået til registreringsdelen.

Jeg har valgt, for at gøre det så overskueligt som muligt, at dele den op over flere sider.

Jeg har set på mange hjemmesider at når man gør sådan så gemmer den automatisk indholdet i felterne indtil man submitter, jeg kan dog ikke få det til at virke

Det jeg har nu for at ordne dette er at jeg på hver side laver en form som så submitter. Så gemmer jeg alle værdierne i en række $_SESSION'er, og så har jeg lavet formler der gør at når man går tilbage, så står værdierne der endnu.

Men klikker man på tilbageknappen i browseren så kommer den frem og spørger om dataerne skal sendes igen og alt muligt.

min idé var at istedet for min submit tilbageknap, at have en history.go(-1) istedet. Kan det lade sig gøre?
Avatar billede fixxxer Nybegynder
13. februar 2007 - 13:13 #1
Der er skrevet en artikel om problemstillingen.

http://www.eksperten.dk/artikler/1057


Du kan ikke benytte POST på den måde, uden at browseren vil spørge om den skal gensende formularoplysningerne.
Avatar billede horizon Nybegynder
13. februar 2007 - 13:37 #2
Synes ikke lige jeg blev synderligt klogere af det :S

Skal jeg rette alle mine POST til GET og så fjerne mit session værk og så virker det eller?
Avatar billede fixxxer Nybegynder
13. februar 2007 - 14:52 #3
Løsningen på dit problem afhænger helt og adeles af hvordan du har stykket din kode sammen, og da du ikke har ville skrive noget link, så bliver det endnu sværere at forholde sig til.
Avatar billede horizon Nybegynder
22. februar 2007 - 21:28 #4
koden (forenklet) er:

if(isset($_POST[side1])){

<form action="<?php $_SERVER[PHP_SELF]; ?>" method="post">
<input type="text" name="boks1" value="<?php $_SESSION[boks1]; ?>">
<input type="submit" name="side2" value="Side 2">
</form>

} elseif(isset($_POST[side2])){

$_SESSION[boks1] = $_POST[boks1];

<form action="<?php $_SERVER[PHP_SELF]"; ?> method="post">
  <input type="radio" name="entenEller" value="Enten">
  <input type="radio" name="entenEller" value="Eller">
  <input type="submit" name="opret" value="Opret!">
  <input type="submit" name="side1" value="Gå tilbage til side 1">
</form>

}

det er så her jeg vil have en history.go(-1) istedet for en submit
Avatar billede horizon Nybegynder
22. februar 2007 - 22:44 #5
Jeg lukker her. Fandt en anden løsning med nogle layers som man så skifter mellem.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester