Gå til innhold

Har noen et login-script?


Anbefalte innlegg

Skrevet (endret)

echo 'Congratulations " . $_POST['username'] . "<br>You may now proceed to the <a href="admin.php">admin area</a>!';
}

 

må forandres litt..

prøv

echo ('Congratulations ' . $_POST['username'] . '<br>You may now proceed to the <a href="admin.php">admin area</a>!');
}

Endret av toss
Videoannonse
Annonse
Skrevet

Okey, poster hele koden her så blir det kanskje enklere... ;)

 

admin.php

<?php
if($_SESSION["login"] == ok){ ?>
This is the admin area
Add content in this section
<a href="logout.php">Logg ut</a>
<?php
}
else {
echo "Not logged in, please log in";
}
?>

 

check.php

<?php
$admin1 = "xitach"; // first admin username
$adm_pass1 = "1234"; // first admin password

$admin2 = "guest"; // second admin username
$adm_pass2 = "1234"; // second admin password

$username = $_POST['username']; // Setter variabel som henter brukernavn fra skjema
$password = $_POST['passord']; // Setter variabel som henter brukernavn fra skjema

if($username == $admin1 && $password == $adm_pass1 || $username == $admin2 && $password == $adm_pass2){
session_start();
$_SESSION['login'] = 'ok';
echo ('Congratulations ' . $_POST['username'] . '<br>You may now proceed to the <a href="admin.php">admin area</a>!');
}

else {
echo 'Username " . $_POST['username'] . " or password " . $_POST['password'] . " is incorrect, please try again'; }
?>

 

logout.php

<?php
unset($_SESSION["login"]);

echo 'Du ble nå logget ut!';
?>

Skrevet (endret)
hva med å prøve det jeg og kakkle foreslo?

har du gjort det? :)

Jepp, alle forslag er prøvd!

 

Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /home/bazze00/public_html/login/check.php on line 18

Endret av datating
Skrevet (endret)

i den forrige posten din er koden feil igjen..

 

og ellers hjelper det veldig å poste feilmeldingene du får, ikke bare si at noe er galt..

 

EDIT: her er et script jeg bruker..

sikkert ikke det sikkreste og beste, men det duger..

 

index.php:

<h3>Loggin til AdminCP</h3>

<form action="loggin.php" method="post">

<p>Brukernavn: <input type="text" name="user" /></p>
<p>Passord: <input type="password" name="pass" /></p>
<p><input type="submit" value="Logg inn" /></p>

</form>

 

loggin.php

<?php

$user = $_POST[user];
$pass = $_POST[pass];

$cookie = "loggedinn";
$value = "true";

if($user == "BRUKERNAVN" and $pass == "PASSORD") {
setcookie($cookie, $value, time() + 3600);
include('velkommen.php');
}
else {
include('forbudt.php');
}
?>

 

så må du passordbeskytte alle filene slik:

<?php

$value = $_COOKIE[loggedinn];

if($value == 'true') {
echo('

BESKYTTET MATRIALE HER

');

}
else {
include('forbudt.php');
}
?>

 

da er man innlogget i en time, og man kan logge ut med dette scriptet:

 

loggout.php

<?php

setcookie("loggedinn", "", time() -3600);
echo('<h3>Du er nå logget ut.</h3>');

?>

Endret av toss
Skrevet (endret)

da må loggin.php bli noe slik:

<?php

$cookie = "loggedinn";
$value = "true";

$admin1 = "xitach"; // first admin username
$adm_pass1 = "1234"; // first admin password

$admin2 = "guest"; // second admin username
$adm_pass2 = "1234"; // second admin password

if(($username == $admin1 && $password == $adm_pass1) || ($username == $admin2 && $password == $adm_pass2)){

setcookie($cookie, $value, time() + 3600);
include('velkommen.php');
}
else {
include('forbudt.php');
}
?>

 

EDTI: rettet en feil..

Endret av toss
Skrevet

Huff av meg så tungvindt, og så lite sikkert!

1. Hvor vansklig er det å lage en "fake" cookie som slipper deg inn der?

2. Det er meget tungvint å måtte plassere "beskyttet matriale" midt i en else tag. Hvorfor gjøre det så tungvindt?

 

Et par tisp:

1. Ikke bruk cookies - for mange som ikke kan bruke det, og sikkerheten går ned med tanke på at alle kan se innholdet.

2. Krypter alltid alle passord.

3. Aldri skriv passord i en PHP fil. Selv om PHP er serverside så vil hele koden vises dersom PHP slutter å fungere - de som har vært med et par år vet at det skjer ganske ofte. Plasser config filer med passor ol. i en egen mappe som du enten endrer CHMOD på slik at kun serveren kan lese de, eller beskytt mappen med htaccess.

4. For å unngå å plassere sider i en if tag, lag et script som sjekker login - dersom login er feil så bruk header("LOCATION:...") for å flytte brukeren til login siden. Dette scriptet includer du på toppen av alle sider som skal være beskyttet, så blir det mye lettere å beskytte en side.

5. if($value == 'true') er MEGET DÅRLIG måte å sjekke login på!!!! Sjekk brukernavnet og passordet hver gang, det tar ekstramt liten tid, men gjør scriptet mye sikrere.

 

Dersom man er litt mer avansert så burde man også lagre ip ol. om brukeren for å sjekke at det ikke er noen som stjeler login'en til en annen!

Skrevet

så enormt tungvindt var det da ikke.. og jeg kan ikke helt se for meg hvem som gidd å hacke siden min som ligger på home.no.net.. vet at det ikke akkurat gjør det sikrere at den ligger der, men det funker for meg.. ;)

 

ellers skal jeg se hva jeg får tid til å gjøre med en sikrere loggin.. :)

 

men jeg har noen spørsmål:

1. hvordan bruker man header(LOCATION:)? prøvd å lese meg frem til hva header() gjør, men aldri fått det til..

2. vil skriptet mitt bli mye sikrere om jeg bruker sessions i stedet for cookies?

3. hva er en config fil? hvordan lager jeg denne/henter info fra den?

 

hadde vært supert å få svar på dette.. da skal skriptet med ett bli sikrere :)

Skrevet

Nå funket scriptet noe bedre tror jeg, men test selv her!

 

Får et par feil...

 

Warning: main(velkommen.php): failed to open stream: No such file or directory in /home/bazze00/public_html/login/check.php on line 15

 

Warning: main(velkommen.php): failed to open stream: No such file or directory in /home/bazze00/public_html/login/check.php on line 15

 

Warning: main(): Failed opening 'velkommen.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/bazze00/public_html/login/check.php on line 15

Skrevet (endret)
du må lage en fil som heter velkommen.php, og så må du lage forbudt.php..

okey, skal de inneholde noe?

 

ok, nå kom det ikke feilmelding, men det den står bare stille på check.php, du kan jo se selv her.

Endret av datating
Skrevet

ja.. det du vil at en som nettop har logget inn skal få opp..

feks: Velkommen, og en link til admin området..

 

og forbudt.php må inneholde det du vil at en som prøver å lese en side uten å ha lov skal se..

 

men som sagt, og som ???????? påpekte, er ikke mitt skript videre sikkert..

Skrevet

Takker for all hjelp toss, du har vært til stor nytte! :)

Trenger ikke noe som er mer sikkert siden det ikke er FBI sin side akkurat... :p Bare jeg ville ikke at passordet stod i html-dokumentet... ;)

  • 2 år senere...

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