Pagina 1 din 1

Acces cu Nume si Parola la pagina php

Scris: Vin Feb 03, 2012
de AndreyIstetul
Buna. As dori sa ma ajutati si pe mine. Am o file, register.php, si vreau sa pun ca atunci cand o acceseaza cineva, de fiecare data, sa apara un mesaj ca aici: http://board.4story.ro/acp
cu numele de user si parola dintr-un fisier cu useri si parola, si abia apoi sa intre pe pagina respectiva sau sa apara ca nu a fost bun daca e gresit user/parola. Vreau sa fac chestia asta pe un site Travian 1.000.000x ca sa blochez accesul celorlalte persoane, doar colegii cu userul si parola care le-o dau.
Deci vreau scriptul si informatii cum sa-l pun, cum e cu fisierul cu parola,etc. Mersi anticipat

Acces cu Nume si Parola la pagina php

Scris: Vin Feb 03, 2012
de claUdiu
Daca e doar o parola, si tu o dai colegilor, atunci e usor:

Faci o variabila cu username, iar alta cu parola, si dupa aceea un if:

Cod: Selectaţi tot

if($nume2 !== $nume1){
echo "Numele e gresit!";
}else if($parola2 !== $parola2){
echo "Parola e gresita";
}else{
echo "Redirect catre pagina personala";
} 
$nume2 si $parola2 sunt datele care vin de la formular. Daca vrei ceva mai "bun" atunci poti face cu db. MAi multe detalii pe site.

Acces cu Nume si Parola la pagina php

Scris: Sâm Feb 04, 2012
de MarPlo
Daca vrei ca Autentificarea sa se faca cum e la pagina data ca exemplu, poti folosi urmatorul cod (trebuie ca PHP sa aibe safe_mode Off):

Cod: Selectaţi tot

$username = 'nume';
$pass = 'parola';
if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER["PHP_AUTH_USER"] != $username || $_SERVER["PHP_AUTH_PW"] != $pass) {
    header('WWW-Authenticate: Basic realm="Adaugati Numele si Parola"');
    header('HTTP/1.0 401 Unauthorized');
    echo '<h1>Text care apare daca apasa Cancel</h1>';
    exit;
}
echo 'Bine ai venit'; 

Acces cu Nume si Parola la pagina php

Scris: Sâm Feb 04, 2012
de AndreyIstetul
Buna. Scuze, nu am reusit cu paginile voastre, nici nu prea m-am straduit. Dar am pagina:

Cod: Selectaţi tot

<?php
// Configuration
// your password. replace password with your password
$mypassword = "parola"; 
// your domain (without www. and http://), replace domain.com with your domain
$mydomain = "traviangreen.garajul-it.com";

$mypassword = sha1($mypassword); // password is encrypted using sha1
if(sha1($_POST['password'])==$mypassword && $_COOKIE["pass"] != $mypassword){
    setcookie("pass", sha1($_POST['password']), time()+315569250, "/", ".$mydomain"); // set the cookie
    $_COOKIE["pass"] = sha1($_POST['password']);
}

if($_COOKIE["pass"]!=$mypassword){
?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
"http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
  <title>TE ROG LOGHEAZA-TE</title>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <style type="text/css">
    html{
      text-align: center;
    }
  </style>
</head>
<body>  
      <h1>PAROLA NECESARA</h1>
      <p>!!!Pentru a accesa aceasta pagina, trebuie sa introduci PAROLA!!!</p>
      <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
        <input type="password" name="password" />
        <input name="pass" type="submit" class="submit" id="submit" value="Submit" />
      </form>
      <a href="http://traviangreen.garajul-it.com/">TravianGreen</a>
</body>
</html> 

<?php
  exit();
}
?>
Merge bine, dar am o intrebare: Vreau sa adaug mai multe parole. Adica cand se autentifica sa mearga si parola, dar si parola1(sa zicem). Cum fac asta?

Acces cu Nume si Parola la pagina php

Scris: Sâm Feb 04, 2012
de MarPlo
Daca esti multumit cu scriptul dat mai sus si-l vrei cu mai multe parole, poti folosi array. Cam asa pentru codul tau:

Cod: Selectaţi tot

// array cu parole
$mypassword = array('pass1', 'pass2', 'pass3');

// your domain (without www. and http://), replace domain.com with your domain
$mydomain = "traviangreen.garajul-it.com";

$mypassword2 = array_map("sha1", $mypassword);              // password is encrypted using sha1
if(in_array(sha1($_POST['password']), $mypassword2) && !in_array($_COOKIE["pass"], $mypassword2)){
  setcookie("pass", sha1($_POST['password']), time()+315569250, "/", ".$mydomain"); // set the cookie
  $_COOKIE["pass"] = sha1($_POST['password']);
}

if(!in_array($_COOKIE["pass"]), $mypassword2)) {
// ... 

Acces cu Nume si Parola la pagina php

Scris: Sâm Feb 04, 2012
de djantonik
In cazul unei autentificari de genul acesta cum se face o delogare ? Am observat ca daca te loghezi, urmatoarea data cand iti cere numele si parola este dupa ce dai restart.

Acces cu Nume si Parola la pagina php

Scris: Sâm Feb 04, 2012
de MarPlo
Fiindca pastrezi datele in cookie, delogarea se face stergand acel cookie, adica setandu-l cu o valoare de timp negativa (vezi in cursul php de pe site despre cookie, sau pe net).
Oricum, acest script de autentificare, copiat, e "slab". Mai bine studiezi cateva lectii de php (lucru cu variabile, instructiuni conditionale, sesiuni) si inveti sa faci tu ce ai nevoie.

Acces cu Nume si Parola la pagina php

Scris: Sâm Feb 04, 2012
de djantonik
MarPlo scrie:Fiindca pastrezi datele in cookie, delogarea se face stergand acel cookie, adica setandu-l cu o valoare de timp negativa (vezi in cursul php de pe site despre cookie, sau pe net).
Oricum, acest script de autentificare, copiat, e "slab". Mai bine studiezi cateva lectii de php (lucru cu variabile, instructiuni conditionale, sesiuni) si inveti sa faci tu ce ai nevoie.
Si mie mi se pare slab. M-ai sigur mi se pare cu baza de date si cu sesiuni.

Acces cu Nume si Parola la pagina php

Scris: Mie Feb 08, 2012
de AndreyIstetul
Buna. Da, probabil ca din punctul vostru de vedere e slab, dar pentru mine e exact ce-mi trebuie. Nu am nevoie de logare de fiecare data, o logare si atat. Deci mersi, TC please.