Gå til innhold

loginscript som ikke fungerer i IE


Anbefalte innlegg

Hei,

 

Jeg har mekka en liten side her med et nokså dårlig login script vil jeg tro, men det oppfører seg helt rart.

 

Siden fungerer ypperlig i Firefox, man kan logge inn og få tilgang til de passordbeskytta sidene.

 

Men, dersom du logger deg inn med Internett Explorer blir saken en helt annen. Man får logge inn, men når du endrer til en ny side så blir man logget ut igjen. Jeg forstår ikke hvorfor.

 

Koden:

 

<?php
session_start();
include("data/mysqlsettings.php");
mysql_connect("$mysql_host","$mysql_user","$mysql_pass");
mysql_select_db("$mysql_db");
if(isset($_POST['force_logout']))
  {
  $_SESSION['srt_user'] = false;
  }
elseif(isset($_POST['force_login']))
  {
  $_POST['force_command'] = "login";
  $login_query = mysql_query("SELECT * FROM srt_users WHERE (name = '".$_POST['username']."')");
  if(mysql_num_rows($login_query) > 0)
    {
    $login_result = mysql_fetch_array($login_query);
    if(md5($_POST['password']) == $login_result['password'])
      {
      $_SESSION['srt_user'] = true;
      setcookie("srt_user", $_POST['username']);
      }
    }
  }
?>

 

if($_SESSION['srt_user'] == true) blir da selvfølgelig brukt til å sjekke om brukeren er logget inn eller ikke. Og $_COOKIE['srt_user'] inneholder informasjon om brukeren som er logget inn. Det er ikke verdens mest avanserte og sikkreste login script, men det fungerer greit nok til denne lille siden, hadde det bare fungert.

 

Noen som har en anelse hvofor dette ikke fungerer i IE? Takker for alle svar og tilbakemeldinger.

Endret av eydybdal
Lenke til kommentar
Videoannonse
Annonse

*forvirra* la merke til en feil i koden...

 

<?php
session_start();
include("data/mysqlsettings.php");
mysql_connect("$mysql_host","$mysql_user","$mysql_pass");
mysql_select_db("$mysql_db");
if(isset($_POST['force_logout']))
  {
  $_SESSION['srt_user'] = false;
  }
elseif(isset($_POST['force_login']))
  {
  $login_query = mysql_query("SELECT * FROM srt_users WHERE (name = '".$_POST['username']."')");
  if(mysql_num_rows($login_query) > 0)
    {
    $login_result = mysql_fetch_array($login_query);
    if(md5($_POST['password']) == $login_result['password'])
      {
      $_SESSION['srt_user'] = true;
      setcookie("srt_user", $_POST['username']);
      }
    }
  }
?>

 

linja: $_POST['force_command'] = "login"; ble fjernet... jeg aner ikke hvorfor jeg har skrevet det... men uansett, det fiksa ikke problemet

Endret av eydybdal
Lenke til kommentar

Trådnavnet er endret, det ble et dårlig trådnavn i starten. Skal huske på det neste gang jeg er sur og irritert.

 

Jeg har sletta cachen hundrevis av ganger, og alle som prøver å logge seg inn via IE får samme problem. Jeg forstår ikke hvorfor IE ikke liker session koden.

Endret av eydybdal
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...