login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Pagina is verlopen / Page is expired

Offline marten - 15/03/2006 13:43 (laatste wijziging 15/03/2006 13:44)
Avatar van martenBeheerder Mede phpérs en andere taaldeskundigen 

Als ik een formuliertje invul (word verzonden met POST) en accepteer deze dan krijg ik wat output. Maar als ik nou op de back toets klik dan geeft ie de melding Page is Expired / Pagina is verlopen. Klik je vervolgens op OK dan krijg je je vorige pagina gewoon te zien.

Weet dat het met die POST te maken heeft. Maar is er een manier om de pagina is verlopen melding te omzeilen?

Thnx

4 antwoorden

Gesponsorde links
Offline kokx - 15/03/2006 13:46 (laatste wijziging 15/03/2006 13:50)
Avatar van kokx Onbekend Ik denk zo:
  1. <?php
  2. //hier je php blaat
  3. if(isset($_POST['submit'])){//of wat voor naam je aan submit hebt gegeven
  4. //eerst het formulier verwerken.
  5. header("Location: paginawaarjenubent.php");
  6. exit();
  7. }
  8. //hier meer php geblaat
  9. ?>

Gebruik dit op de plaats waar je het formulier naartoe laat gaan. En controleer of er velden zijn ingevuld.
Offline marten - 15/03/2006 13:53
Avatar van marten Beheerder dat bedoel ik niet ;)

Voorbeeld:

www.shipdata.nl
rechts bovenste veld in formulier vul je UK 2 in. Vervolgens enter. Je krijgt vervolgens lijstje met schepen met UK 2.

Vervolgens klik je op 1 van die schepen kom je in een eigenschappen venster met foto's enzo blabla.

Als je in dat scherm op de Terug / Back knop van je browser klikt krijg je een melding. Die melding wil ik omzeilen.

Misschien dat je het nu snapt 
Offline Thomas - 15/03/2006 13:54 (laatste wijziging 15/03/2006 13:55)
Avatar van Thomas Moderator Die // hier meer php geblaat wordt niet uitgevoerd als je exit(); erboven zet.

Het beste kun je een php-pagina maken die de formulier-invoer verwerkt, en die je daarna meteen doorstuurt naar een andere pagina.
Dat doorsturen geschiedt dan idd met een header().

Dus bijv.:
formulier-pagina "form.php" heeft action "do.form.php"
verwerk-pagina "do.form.php" verwerkt het formulier, en heeft op de laatste 2 regels een header staan (met bv locatie "form.done.php") en een exit-statement
voltooid-pagina "form.done.php" toont een boodschap of het invoeren wel of niet geslaagd is.

De methode die kokx (en ik) biedt (bieden) biedt een oplossing voor je probleem.
Offline marten - 15/03/2006 13:58
Avatar van marten Beheerder oke begin het te begrijpen

zoals het nu is

form ---> resultaten
als je terug wilt

resultaten ---> form dan geeft ie melding weer

maar jullie oplossing

form ---> verwerk ---> resultaten
dus als je dan terug gaat, is ie terug bij verwerk en krijg je de melding niet....

Zo zit het dus in elkaar niet?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.187s