Avatar billede smackers Nybegynder
21. april 2006 - 09:26 Der er 13 kommentarer og
1 løsning

Husk form fields til senere

Hvilke(n) teknik(ker) kan jeg bruge med javascript og php for at huske form fields spredt over flere sider.

Fx:
- user indtaster data på side_1 og trykker submit -> ryger videre til side_2

- user indtaster data på side_2 og trykker submit -> ryger videre til side_3

- user er nu på side 3 men ønsker at ændre en indstilling på side_1. user klikker derfor på et link til side_1, ændrer data og klikker på et link til side_3 for at fortsætte derfra...

Eks: når man opretter et nyt produkt til salg på Ebay er indtastning spredt over flere sider. Man kan gå frem og tilbage for at ændre sine indtastninger og alle form fields huskes.

mvh smackers
Avatar billede thesurfer Nybegynder
21. april 2006 - 10:16 #1
Cookies.

/theSurfer
Avatar billede thesurfer Nybegynder
21. april 2006 - 10:17 #2
java script: cookies, urls
PHP: cookies, sessions, urls

/theSurfer
Avatar billede thesurfer Nybegynder
21. april 2006 - 10:17 #3
Rettelse:
java script: cookies, urls
PHP: cookies, sessions, urls, form (submit)

/theSurfer
Avatar billede smackers Nybegynder
21. april 2006 - 10:22 #4
tak for svar thesurfer,

hvad mener du med urls??
Avatar billede smackers Nybegynder
21. april 2006 - 10:35 #5
en beskrivelse af hvordan det gøres bedst/mest effektivt ville gøre godt.

hvad er fordele-ulemper ved at bruge JS, PHP, JS+PHP til dette?

trods alt 60 point.. :)
Avatar billede thesurfer Nybegynder
21. april 2006 - 10:42 #6
Med "urls" mener jeg f.eks: side.php?navn=hans&telefonnr=123456

Parameterne i urlen kan aflæses af både JavaScript og PHP.

Brug så meget PHP til dette, og så lidt JavaScript som overhovedet muligt, da JavaScript (der afvikles på klientsiden = i browsere) kan manipuleres.

PHP afvikles på serversiden, hvor brugeren ikke har adgang.


/theSurfer
Avatar billede forfatterksl Nybegynder
21. april 2006 - 21:45 #7
STOP! STOP! STOP!

Kan du ikke også skrive i første side:

<form action="behandl.php" method="post">
Dit navn:<br><inpyt type=text name="navnet"><br>
Din alder:<br><inpyt type=text name="alderen"><br>
<input type=submit value="Lav info">
</form>

Og i behandl.php skrive:

<?php
$navn = $_REQUEST["navnet"];
$alder = $_REQUEST["alderen"];

echo "Så du hedder ".$navn." og er ".$alder." år gammel?";
?>


- har ikke selv tjekket, men jeg tror, at det virker.
Avatar billede thesurfer Nybegynder
21. april 2006 - 23:23 #8
Problemet med at bruge form + post er, at man SKAL submitte data hver eneste gang. Hvis du ikke gøre det, mister du de indtastede oplysninger.

Man bør/kunne gøre som jeg skrev i 21/04-2006 10:17:44:
En kombination af form + post og cookies/sessions i PHP.
På den måde kan man bevare data, selvom man skifter sider, uden at submitte.

/theSurfer
Avatar billede forfatterksl Nybegynder
21. april 2006 - 23:25 #9
Eller man kunne udskrive de tidligere værdier i <input type=hidden>, så de også bliver submittet, når man går videre... ikke helt prof, men man ville nok kunne lave det.
Avatar billede thesurfer Nybegynder
21. april 2006 - 23:34 #10
forfatterksl> Igen har du dette problem:
"Problemet med at bruge form + post er, at man SKAL submitte data hver eneste gang. Hvis du ikke gøre det, mister du de indtastede oplysninger."

Det nytter ikke noget, at have dem i type="hidden", hvis brugeren går til en anden side, ved at klikke på et link.
Så mister du ALLE data, også dem der er i type="hidden"..

/theSurfer
Avatar billede forfatterksl Nybegynder
21. april 2006 - 23:36 #11
Ah! Ser problemet ;-)
Avatar billede thesurfer Nybegynder
21. april 2006 - 23:37 #12
Så man skal helst bruge cookies/sessions..

/theSurfer
Avatar billede smackers Nybegynder
24. januar 2007 - 23:59 #13
Endte med at bruge PHP session :)
Avatar billede thesurfer Nybegynder
25. januar 2007 - 11:26 #14
smackers> Hvorfor snupper du selv pointsne, når du bruger mit forslag?
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