hockey500 Skrevet 24. august 2005 Del Skrevet 24. august 2005 (endret) hei, hvordan sletter jeg denne? Det skal brukes i et enkelt system for å registrere brukere. Men hvis man refresher siden etter å ha trykket "Meld på" så husker den fortsatt $_POST['submit']. Jeg vil gjerne slette denne etter første gang. unset() funka ikke Endret 25. august 2005 av hockey500 Lenke til kommentar
Gjest Slettet-cfOgpBusmt Skrevet 24. august 2005 Del Skrevet 24. august 2005 Grunnen til dette skyldes at HTTP er en stateless protokoll, og at browseren vil beholde POST-datene etter at de er overført. Du kan f.eks. lage en side som behandler dataene, og bruker header() til å redirecte til en annen side. Lenke til kommentar
Tosh Skrevet 24. august 2005 Del Skrevet 24. august 2005 jeg pleier å bruke det kyberbob foreslår. På siden du behandler dataene, bruk en header() for å redirecte f.eks til samme sida. For så å kanskje skrive ut en trivelig melding nrå du ser at $_POST['submit'] ikke er satt. 'Takk for at du skrev inn ting i skjemaet mitt. Refresh så mye du vil, det vil ikke bli registrert mer enn en gang.' Lenke til kommentar
hockey500 Skrevet 25. august 2005 Forfatter Del Skrevet 25. august 2005 greit, får satse på den løsningen da. Lenke til kommentar
hockey500 Skrevet 25. august 2005 Forfatter Del Skrevet 25. august 2005 funka ikke Lenke til kommentar
Gjest Slettet+6132 Skrevet 25. august 2005 Del Skrevet 25. august 2005 <? if (!$POST['submit']) { echo "Juks?"; } else { reggfunksjoner(); header("Location: takk_for_regg.php"); } ?> Noe slikt? Ha alltid en side som du går til etterpå og sier at registreting er utført, hvis du bruker header() så vil det ikke hjelpe med "tilbake"-knappen heller. Lenke til kommentar
???????? Skrevet 25. august 2005 Del Skrevet 25. august 2005 unset() fungerer akuratt om det skal i dette tilfellet, men det vil ikke fungere til ditt bruk. Siden hver gang brukeren oppdaterer siden så vil alle POST variablene sendes på nytt, og derfor har det ingen ting å si at du slettet en POST variabel forrige gang - siden den nå er sendt på nytt. Forslaget med header() er den mest praktiske løsningen. Sessions eller cookies fungerer også, men header vil nok være enklest. I scriptet som tar i mot skjemaet så legger du til header("Location: http://www.dittdomene.no/takk.html"); exit; Legg merke til to ting: 1. Bruk alltid full adresse til scriptet, inkl http://www. Dette er fordi det er det som er standard, og dersom du ikke bruker det så er det scriptet ditt som er feil - og ikke browseren det er noe i veien med dersom det ikke fungerer. 2. Dersom du har mer script etter header() så bruk alltid exit; slik at ikke scriptet fortsetter å kjøre. Lenke til kommentar
Cucum(r) Skrevet 25. august 2005 Del Skrevet 25. august 2005 1. Bruk alltid full adresse til scriptet, inkl http://www. Du kan egentlig utelukke www-delen, sidan www er fhv. utdatert. Lenke til kommentar
???????? Skrevet 25. august 2005 Del Skrevet 25. august 2005 www er ikke nødvendig dersom domenet www.dittdomene.no og dittdomene.no er begge satt opp. Selv om det finnes anti www sider på nettet så må man ikke tro på noen som helst måte at www.dittdomene.no og dittdomene.no alltid og automatisk er det samme. De store kontrollpanelene som Cpanel og DirectAdmin setter alltid opp begge deler, men det er ikke alle sider som er hostet på slike kontrollpaneler. Poenget er enkelt: dersom www.dittdomene.no og dittdomene.no "peker" på samme side så er det inne nødvendig med www. - men dette er avhengig av DNS oppsettet på serveren. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå