session_destroy werkt met IE9 maar niet in Chrome

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Gerrit broekhuis

gerrit broekhuis

10/02/2012 21:49:36
Quote Anchor link
Hoi,

In een inlogpagina staat als eerste 3 regels

<php>
session_start();
session_unset();
session_destroy();
?>

Wanneer ik vanuit de pagina die door de inlogpagina wordt aangeroepen terug ga (via browser vorige pagina), dan worden de form input velden bij IE9 keurig leeggemaakt. Bij Chrome gebeurt er niets en blijft de eerdere invoer in de login velden zichtbaar.

Iemand enig idee hoe ik dit zou kunnen oplossen?

Groeten, Gerrit
Gewijzigd op 10/02/2012 21:50:54 door Gerrit broekhuis
 
PHP hulp

PHP hulp

01/12/2020 13:13:31
 
- SanThe -

- SanThe -

10/02/2012 22:25:11
Quote Anchor link
Wat heeft dat met de session te maken?
 
Wouter J

Wouter J

10/02/2012 23:06:34
Quote Anchor link
Allereerst is PHP een server-side scripting taal, wat betekend dat het op de server gebeurd en het dus server afhankelijk en niet browser afhankelijk is. Of je nou Chrome, Opera, IE of je zelfgemaakte browser gebruikt PHP code veranderd niet.

Dit is duidelijk een HTML/CSS fout. Kun je misschien iets meer content geven, hoe ziet je HTML form eruit? Hoe haal je hem leeg? Enz.
 
Gerrit broekhuis

gerrit broekhuis

13/02/2012 15:46:25
Quote Anchor link
Misschien zit ik inderdaad niet in het goede spoor, maar ik dacht dat het met sessions te maken zou kunnen hebben. Het gedrag onder IE is in ieder geval anders dan onder Chrome.

Onderstaand de uitgeklede PHP pagina's om het te testen:

demo1.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
session_start();
session_unset();
session_destroy();
?>

<html>
<body>
<form method="post" action="demo2.php">
Naam:</td><td><input type="text" id="login" name="login" /><input type="submit" value="Inloggen" />
</form>
</body>
</html>


demo2.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
session_start();
ob_start();
$gebruikersnaam = $_POST['login'];
$_SESSION['logged_in'] = true;
echo "welkom ". $gebruikersnaam;
?>


Het lijkt me logisch dat wanneer je naar een form terug gaat, deze weer leeg getoond wordt (zoals in IE). Moet ik dat met Javascript oplossen?
 
- SanThe -

- SanThe -

13/02/2012 15:51:08
Quote Anchor link
Gerrit broekhuis op 10/02/2012 21:49:36:
Wanneer ik vanuit de pagina die door de inlogpagina wordt aangeroepen terug ga (via browser vorige pagina)


Het is vrij normaal dat de velden dan nog zijn ingevuld. Je gaat via de browser terug namelijk. De pagina wordt dan uit de browsercache opgehaald en niet opnieuw van de server. Dus het lijkt mij een browserkwestie en niet het script.
Gewijzigd op 13/02/2012 15:56:09 door - SanThe -
 
Gerrit broekhuis

gerrit broekhuis

14/02/2012 12:58:54
Quote Anchor link
Opgelost via Javascript vlg. http://www.boutell.com/newfaq/creating/clearform.html
Gewijzigd op 14/02/2012 13:00:12 door gerrit broekhuis
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.