PHP i MySQL - logowanie


(master of disaster) #1

";//Tworzymy formularz ktory bedzie wysylal dane metodą post
echo "Nick:


(kostek135) #2

Ten skrypt rejestracji naprawdę działa? Pod wrażeniem jestem :wink:

Więc np. tworzysz formularz logowania, po wpisaniu danych sprawdzasz czy istnieje user o takim nicku i o takim hash'u md5 hasła, jeśli tak tworzysz dla niego ciastko bądź sesje.


(master of disaster) #3

Ok coś tam wykombinowałem:

?php= $_POST['user'];$pass = md5($_POST['pass']);$user  $pass) {     mysql_connect('localhost','root','haslo') or die(mysql_error());     mysql_select_db('nk') or die(mysql_error());     $temp=mysql_query("SELECT id FROM tabela WHERE user='$user' and pass ='$pass'") or die(mysql_error());     =mysql_num_rows($temp);     $temp=mysql_fetch_array($temp);     $id=$temp['id'];

(kostek135) #4

odnośnie tego musisz zrobić prawa na swojej stronce zrobiłem to tak:

// Define of user rights

define('iGUEST', $userdata[level] == 0 ? 1 : 0);

define('iMEMBER', $userdata[level] >= 1 ? 1 : 0);

define('iFwB', $userdata[level] >= 2 ? 1 : 0);

define('iVIP', $userdata[level] >= 3 ? 1 : 0);

define('iMOD', $userdata[level] >= 4 ? 1 : 0);

define('iADMIN', $userdata[level] >= 5 ? 1 : 0);

define('iSYSOP', $userdata[level] == 6 ? 1 : 0);


if (iADMIN) {

 // to bedzie tylko dla sysopa i admina

}


if (iVIP) {

// dla VIP'a, Mod, admina, sysopa

}

Dodatkowo musisz pobierać z tabeli prawa przypisane do usera - odpowiednia cyferka (od 1-6 w tym przypadku)


(master of disaster) #5

Nie za bardzo rozumiem, możesz mi podać coś prostego dla mojego skryptu logowania, bo to będzie tylko jeden user, i jeśli nazwa usera = np. admin i hasło się zgadza to $_SESSION['admin'] == 1; cos tego typu :wink:

pzdr.


(Kontakt) #6

Wszystkie rzeczy w $_SESSION istnieją tylko jak je stworzysz :wink: Więc jak ktoś się zaloguje to wtedy dodaj np. w $_SESSION['user'] i sprawdź czy taka zmienna istnieje (jak bedziesz chciał sprawdzać czy ktoś jest zalogowany) -> funkcja isset :wink:


(master of disaster) #7

@edit: dobra już chyba wiem, zrobie to na id z bazy danych, na razie dzieki :slight_smile: jak by co to napisze tu jeszcze.