Avatar billede zorax_ Nybegynder
24. juli 2004 - 14:49 Der er 8 kommentarer og
1 løsning

logind beskyttelse

Jeg bruger session til et logind script, og følgende er til at beskytte en side med:
<?php
session_start();
if(!$_SESSION['logind'] == 1) {
header("Location: admin.php");
exit;
}
?>

Og så er det jeg ville, på index siden, vise et admin panel hvis man er logget ind, og ik vise noget hvis man ikke er, hvordan skal jeg så omskrive den der, eller skal jeg slet ik bruge det, men noget helt andet?
Avatar billede jammerlab Nybegynder
24. juli 2004 - 15:07 #1
if($_SESSION['logind']) { echo "ADMIN STUFF"; }

:)
Avatar billede zorax_ Nybegynder
24. juli 2004 - 15:15 #2
Ja ok, det virker os fint, men hvis man feks. er på forsiden og logger ind, skal man stadig være på forsiden, bare med lidt flere muligheder.
Det den gør nu er at den viser kun "ADMIN STUFF", når jeg går ind på en side, hvor det der session_start er i toppen, hvilket jo ik er helt optimalt, da jeg ikke kan sætte session_start tingen i toppennaf min index side. Håber du forstår.
Avatar billede zorax_ Nybegynder
24. juli 2004 - 15:16 #3
Eller os er det mig der gør et eller andet forkert  :(
Avatar billede jammerlab Nybegynder
24. juli 2004 - 15:20 #4
Forstår dig ik helt :P

if($_SESSION['logind']) { echo "ADMIN STUFF"; }

Gør bare at hvis du er logget ind - altså du har set din session "logind" så viser den noget... Du kan også lave

if($_SESSION['logind']) { echo "ADMIN STUFF"; } else { echo "Du må ikke være her"; }

Du kan sagtens lave login og admin siden i samme fil - så kan du lave

admin.php
---------
if($brugernavn) {
kontrol hos databasen går jeg ud fra
}

if(!$_SESSION['logind']) { echo "
din form med login... brugernavn her: password her: osv og din form refresher bare til $PHP_SELF og hvis du så har et input felt med navn brugernavn og trykker login så skulle det ellers gerne kører derud af hvis du forstår :)
";
} else { echo "
admin stuff
";
}
Avatar billede zorax_ Nybegynder
24. juli 2004 - 15:24 #5
Jeg bruger "include" til at vise sider med, altså feks. siden hvor man kan oprette nyheder, er der sat en session_start kontrol ting i toppen på. Det jeg så gerne ville ha, at man kunne logge ind, uden at blive sendt over til en admin side,
altså stadig være på index siden, hvor den så bare viser en admin menu, og ikke viser noget hvis man ikke er .
Avatar billede jammerlab Nybegynder
24. juli 2004 - 15:26 #6
så smæk den session_start i toppen af al din kode... du includer vel også <head> så... altså toppen af dine html dokumenter... så smider du bare din session_start helt i toppen der så den er det første der bliver indlæst på siden :)
Avatar billede zorax_ Nybegynder
24. juli 2004 - 15:29 #7
Jamen hvis jeg smider den i toppen af min index side, viser den slet ik siden, da man ikke er logget ind. :)
Avatar billede jammerlab Nybegynder
24. juli 2004 - 16:10 #8
Det lyder altså underligt... tror ikke lige jeg kan følge med mere :P
Avatar billede zorax_ Nybegynder
24. juli 2004 - 16:32 #9
Ok, :(  Så må jeg finde ud af noget andet .
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester