Gå til innhold

Innlogging til side


Anbefalte innlegg

Hei!

 

Er ingen dreven programmerer, men tenkte å lage passord for å komme inn til siden. Hvordan gjør jeg dette best? Når jeg legger inn passord nå, så får jeg opp innholdet på siden selv om jeg har skrevet feil passord. Må jeg ha en else-kommando som går til en ny side?...

help.. :ermm:

Lenke til kommentar
Videoannonse
Annonse

Koden som jeg bruker nå er:

 

<?php 
  $bruker = $_GET['bruker'];
  $passord = $_GET['passord'];
  
  if ( ($bruker == "brukernavnet") && ($passord == "passordet)
  echo "Nå er du logget inn";
  else 
echo "Du må logge inn med riktig brukernavn og passord";

 ?> 

 

Men altså... Selv om jeg skriver feil passord kommer jeg inn på den siden. Og da står det "Du må logge inn med..."

Klarer ikke å finne ut hvordan jeg skal fikse det.

Lenke til kommentar

Men altså... Selv om jeg skriver feil passord kommer jeg inn på den siden. Og da står det "Du må logge inn med..."

Klarer ikke å finne ut hvordan jeg skal fikse det.

Det er jo klart du kommer til siden, selv om du skriver feil passord.. Det er jo akkuratt det som skal skje. Du skriver inn passord/brukernavn, blir seendt til siden, utfører en sjekk om det er riktig så:

 

Hvis(RIKTIG) {

gjør vi dette;

} else {

Gjør vi dette!;

}

 

Da er det bare enten det før eller etter else som blir utført.. aldri begge..

Lenke til kommentar
Okeeei.. Men saken er at det er ting på den siden som de som skriver feil passord ikke skal se. what to do?

Da bør du lese posten min en gang til!

 

Hvis(passord er feil) {

DETTE SKJER;

} ELSE {

DETTE HER SKJER!

}

 

 

Dersom passordet er feil vil atlså bare "Dette skjer" slå inn. "Dette her skjer" vil kun skje dersom passordet er riktig.

 

Det virker som du ikke har skjønt if-setninger i det hele tatt, så du bør absolutt lese om if i php-manualen. (http://www.php.net/)

Lenke til kommentar
Koden som jeg bruker nå er:

 

<?php 
  $bruker = $_GET['bruker'];
  $passord = $_GET['passord'];
  
  if ( ($bruker == "brukernavnet") && ($passord == "passordet)
  echo "Nå er du logget inn";
  else 
echo "Du må logge inn med riktig brukernavn og passord";

 ?> 

 

Men altså... Selv om jeg skriver feil passord kommer jeg inn på den siden. Og da står det "Du må logge inn med..."

Klarer ikke å finne ut hvordan jeg skal fikse det.

Det skal skrives sånn:

<?php 
  $bruker = $_POST['bruker'];
  $passord = $_POST['passord'];
  
  if ($bruker == "brukernavnet") && ($passord == "passordet) {
  echo "Nå er du logget inn";
  } else {
  echo "Du må logge inn med riktig brukernavn og passord"; }

 ?> 

 

Du må huske { og }. I tillegg burde du bruke $_POST isteden for $_GET, der $_POST sender sjult mens $_GET gjennom url'en

 

EDIT: skriveleif

Endret av Judofyr
Lenke til kommentar

Det er kun nødvendig med {} dersom man skal skrive mer enn 1 setning under enten if eller else. Dersom du f.eks. bare skal skrive echo'Et eller annet'; er det ikke nødvendig. Likevel er det lurt å venne seg til å skrive {} hver gang man benytter if - else strukturen. Men nok om det.

 

Det ser ut som du har noen syntaks feil.

 

 

I setningen if ( ($bruker == "brukernavnet") && ($passord == "passordet) har du noen småfeil, og du må skrive den slik:

if ( ($bruker == "brukernavnet") && ($passord == "passordet") )

 

Du hadde ikke med en siste " på passord + at du manglet en sluttparantes.

Endret av datapia
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å
×
×
  • Opprett ny...