/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hvorfor virker mit login-script ikke for a~
Fra : MHT


Dato : 30-08-01 20:44

Hej Alle

CC: http://www.eksperten.dk/spm/104197

Jeg har arbejdet nogle år med php+mysql, men er løbet ind i et problem som jeg ikke kan gennemskue og derfor søger jeg
lidt hjælp.

Det drejer sig om et brugersystem, hvor jeg vil registere brugeren med en session.

De fleste browsere kan godt logge ind, mens nogle enkelte få browsere ikke kan - næsten uanset hvordan jeg vender og
drejer scriptet.

Jeg har market i scriptet hvor brugeren som ikke kan logge på kommer til, men der sker ikke nogen registering af session
(det er hvad jeg mener).

Se script i action:
http://www.laererstuderende.dk/t/test9/profil/


Scriptet:
------------------------------------------------------
<?
session_start();
/*--------------------------------------
Vi begynder på validering af brugeren...
--------------------------------------*/
if(!$bruger)
{ // Bruger ikke logget på. Godt så kan vi undersøge om der er indtastet de korrekte oplysninger.
if( ( isset ( $brugernavn )) && ( isset ( $kode )) )
{ // Brugeren har udfyldt formularen.
$return= $sqllogin->login ( $brugernavn, $kode ); //Slår op i DB. Retur med array.
if ( ( $return[adgang] == false ) AND ( $return[brugernavn_findes_ikke] == $brugernavn ) )
{ //Brugernavnet findes ikke
header("Location:
index.php?goto=fejl&ejfundetbrugernavn=$return[brugernavn_findes_ikke]");//brugernavn IKKE fundet.
exit;
}
elseif ( $return[adgang] == false )
{
header("Location: index.php?goto=fejl"); //Sender bruger til ny login. Korrekt brugernavn, men
forkert kode
exit;
}
elseif ( $return[adgang] == true )
{
-->>> Det er her brugeren kommer til... men brugeren bliver ikke sendt med headeren til enten $go eller
index.php?goto=profil (som er det som normalt sker)
$bruger = $return[ID];
session_register("bruger");

if ( isset ( $go ) )
{ // $go er en redirect-variabel, som sættes, hvis brugeren har requestet en side, men
ikke logget på.
header("Location: $go");
unset($go);
exit;
}
else
{
header ("Location: index.php?goto=profil");
exit;
}
}
else
{ // Ups.. We got a problem Houston....
header ( "Location: index.php?goto=dbfejl");
}
} else
{
header("Location: index.php"); // Brugeren har ikke angivet brugernavn eller kode, og derfor henvises til
hovedside
exit;
}
}
else
{ //Brugeren er logget på korrekt.
if ( isset ( $go ) )
{ // $go er en redirect-variabel, som sættes, hvis brugeren har requestet en side, men ikke logget på.
header("Location: $go");
unset($go);
exit;
}
else
{

header("Location: index.php?goto=profil");
exit;
}
}
?>
------------------------------------------------------

 
 
Christian Joergensen (02-09-2001)
Kommentar
Fra : Christian Joergensen


Dato : 02-09-01 23:00

MHT <m.h.t@bigfoot.com> wrote:

> header ("Location: index.php?goto=profil");

Du kan starte med at overholde HTTP/1.1-standarden. Husk at sende den fulde
URL sammen med en Location-header.

ex.

header("Location: http://$HTTP_HOST/index.php?goto=profil");

--
Christian Jørgensen / Yeah, yo mama dresses you funny and you need a
http://www.razor.dk / mouse to delete files.


Søg
Reklame
Statistik
Spørgsmål : 177522
Tips : 31968
Nyheder : 719565
Indlæg : 6408670
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste