Gå til innhold

Hvordan få "Members/Admin Login" på siden min?


Anbefalte innlegg

Videoannonse
Annonse

la oss si du har en bruker som heter per. per er vanlig medlem på siden din.

du logger deg på med brukernavnet alex som er admin på siden.

 

du lager en database som inneholder brukernavn/passord.

 

når per logger seg på oprettes en session som heter 'bruker' og når han surfer rundt blir menyer og lignende vist på bakgunn av hvilken session som er mellom per og serveren.

 

dette kan for eksempel gjøres på følgende måte:

if (isset($_SESSION['NavnPåSession'])) {
   det som skal skrives ut for den spesiellt session kommer her
}

 

(denne koden sjekker navnet på den session som måtte være mellom deg og serveren)

 

du skal også kunne nekte brukere adgang til en side på bakgrunn av hvilken session som kjøres mellom brukeren og serveren. hvis folk ikke har 'riktig' session kan de tilogmed 'kastes ut' av siden.

 

du kan lese mer om sessions her.

Lenke til kommentar
  • 3 uker senere...

Du lager en bruker registrering, og setter inn dataen i en database (mySQL)

Der lager du f.eks. feltene user(brukernavn) og pass(passord)

 

Så lager du en logginn side som sjekker user og pass mot databasen. Er de korrekte oppretter du en session som inneholder user og pass.

 

$_SESSION['user'] = $user;

$_SESSION['pass'] = $pass;

 

dersom brukernavnet og passordet er feil (stemmer ikke med databasen) sender du de tilbake til loginn siden med en liten feilmelding om at brukernavnet eller passordet ikke var korrekt.

 

Så lager du en fil som du skal include på alle sidene som bare medlemmer skal se. Den filen sjekker om user og pass stemmer med verdiene i databasen stemmer - gjør de det så setter du en variabel til true... f.eks.:

 

$user = $_SESSION['user'];

$pass = $_SESSION['pass'];

$query = mysql_query("SELECT * FROM tabellen WHERE user=$user" AND pass ='$pass');

 

if(mysql_num_rows($query) > 0){

$UserPass = True;

}else{

$UserPass = False;

}

 

Gi denne filen navnet f.eks. userpass.php

 

 

For å sette dette ut i funksjon på medlemssidene includer du userpass.php og sjekker om $UserPass = True.

 

F.eks.:

include "userpass.php";

if($UserPass == True){ // eventuelt bare if($UserPass){

 

echo "her skriver du innholdet på medlemssidene";

 

}else{

echo "Du er ikke logget inn, vennligst logg inn!";

}

 

Kommentarer:

- Det er mange som mener det er unødvendig å sjekke passordet og brukernavnet på nytt - men dersom du noen gang skal flytte sidene ut på et webhotell sammen med andre side sider er det lett for de, og andre hackere, å lage session dersom du bare har en verdi som $ok = 1.

- Aldri lagre passord som ikke er krypterte!

- Det er mange måter å forenkle scriptet over på, f.eks. isteden for å sette $UserPass til False kan du sende brukerene tilbake til logginn siden - eller en egen feilmeldingsside - så slipper du if($UserPass) - men scriptet er enklere å forstå nå dersom du er ny med PHP.

 

Good luck!

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...