Sessioner i internet explorer|Programmering / Grafisk formgivning|Forum|Nordichardware

Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
The forums are currently locked and only available for read only access
sp_Feed sp_TopicIcon
Sessioner i internet explorer
Calzone
Siktar mot toppen
Medlem
Forum Posts: 94
Member Since:
June 21, 2004
sp_UserOfflineSmall Offline
1
September 2, 2007 - 9:53 am
sp_Permalink sp_Print

Jag försöker göra en mycket enkel lösenordsskyddning av en websida. Det fungerar alldes utmärkt i både Firefox och Opera men i Internet Explorer händer ingenting.

Såhär ser det ut

session_start();
if(isset($_POST['submit']))
{
if($_POST['pw']==='hej')
{
$_SESSION['register'] = 'true';
header("Location: skyddad_sida.php");
exit;
}
}
echo '
<form action="" method="post">
Lösenord:<input type="password" name="pw" />

<input type="submit" name="submit" value="Till formuläret" />
</form>
';

Och såhär ser den skyddade sidan ut:

session_start();
if(!isset($_SESSION['register']) || $_SESSION['register']!=='true')
{
header('Location: pw_sida.php');
}

När jag försöker logga in i explorer kommer jag bara tillbaka till forlmuläret, alltså kommer ingenstans. Och som sagt, det fungerar däremot både i opera samt firefox. Någon som vet vad jag gjort fel?

gurragustaf
Mina inlägg skrivs i binär kod
Medlem
Forum Posts: 126
Member Since:
January 14, 2006
sp_UserOfflineSmall Offline
1156237
September 15, 2007 - 5:13 pm
sp_Permalink sp_Print

Är lite delad i om du ska använda dig av "===" istället för "==",
tre stycken likamed har jag för mig är är EXAKT samma OCH
samma typ av värde, men det borde inte spela någon roll.

Aja, felet skulle jag tro beror på att du inte har någon action i formuläret,
sätt typ till action="?" eller helst ganske action="pw_sida.php" eller bla bla action=" . $_SERVER['PHP_SELF'] . "" bla bla

Sen för att snygga upp koden lite eller ta med dig i framtiden om du tänkte
fortsätta men php är att ändra:
if(!isset($_SESSION['register']) || $_SESSION['register']!=='true')
till:
if(!isset($_SESSION['register']) || !$_SESSION['register'])

Efter som if frågor om det är sant(true) eller falsk(false) så behöver man inte
säga !=='true', utan frågan blir automatisk om session register är INTE sant kör detta...

Sen, när du sätter $_SESSION[register] till sant(true) så kan du skippa 'true' och bara skriva true.

Hoppas det funkar!

EDIT: Jo.... === och == spelar nog roll, och även !== till ! eller != du får testa...

Mvh gurragustaf

Forum Timezone: Europe/Stockholm
Most Users Ever Online: 694
Currently Online:
Guest(s) 29
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Andreas Galistel: 16287
Jonas Klar: 15897
ilg@dd: 10810
Nyhet: 10607
Mind: 10550
Ctrl: 10355
Gueno: 9881
Guest: 9344
Snorch: 8881
Callister: 8468
Newest Members:
PetrbonFU PetrbonFU
Karine Bembry
Dolores Mcdaniels
Anibal McLeish
Francisca Alt
Alfie Everhart
Lester Huitt
Orlando Jorgensen
Mikki Lundgren
Dakota Kozlowski
Forum Stats:
Groups: 11
Forums: 59
Topics: 146630
Posts: 1300967

 

Member Stats:
Guest Posters: 2
Members: 79425
Moderators: 0
Admins: 11
Administrators: nordicadmin, Henrik Berntsson, Anton Karmehed, Carl Holmberg, Joel Oscarsson, Mikael Linnér, Mikael Schwartz, Andreas Paulsson, Nickebjrk, Mattias Pettersson, EmxL