Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL]Logowanie
Forum PHP.pl > Forum > Przedszkole
MS1
Witam.
Stworzyłem system logowania tak jak podano na tej stronie:
http://webmade.org/porady/sesje-php-system-logowania.php

Mógłby mi ktoś pomóc zwiększyć poziom bezpieczeństa systemu??
Również, nie wiem jak zrobić to, że gdy wpisujemy hasło w budkę, wyświetlały się gwiazdki zamiast liter.

Również zastanawiam się jak zrobić logowanie dla uprawnionych użytkowników np. adminów, tzw power users

Z góry dzięki

Pozdrawiam
Max Damage
Z tymi gwaizdkami masz na myśli to?
  1. <input name="pass" type="password" />

Logowanie dla użytkowników o wyższej randze można zrobić przez sprawdzenie statusu. np. 1 oznacza zwykłego usera, 2 admina itd. Oczywiście musisz mieć odpowiednią kolumnę w bazie danych.
MS1
Dzięki, nie myślałem, że to będzie takie proste.
Jeśli chodzi o rangę logowania, to wie ktoś jak przypisać rangę userowi??

A jeśli chodzi o bezpieczeństwo to jak??
Słyszałem, że logowanie oparte na sesjach, nie jest zbyt bezpieczne.
Ściema czy prawda??
Pozdro
Lars
Co do sesji to zdecydowanie ściema. Jest to rozwiązanie najbezpieczniejsze.

Co do rang - robisz tabelę z rangami z polem `id_rangi` i `uprawnienia`, dodajesz do tabeli użytkowników pole `ranga_usera` a w niej numer id jakiejś rangi. Potem sprawdzasz jaką user ma rangę i uprawnienia. Mam nadzieję, że wyjaśniłem to jasno tongue.gif

Pozdrawiam
kayy
Ja wyjaśnie jaśniej może ;D



Tworzysz pole rang, i przy rejestracji do zapytania dodajesz to pole i domyślna wartość 0. A pod adminów, edytujesz je z panelu admina (jeżeli takowy masz dopisz zapytania) lub ręcznie z PHP MY ADMIN smile.gif

A potem sprawdzasz w panelu admina, sesje którą przekazujesz przy rejestracji, np. $_SESSION['rang'];

i sprawdzasz, if($_SESSION['rang'] > 1) {}

Ja u siebie mam sprawdzanie po, nazwie użytkownika, jego ip i specjalnie wygenerowanej liczbie.

Jeżeli masz pytania to pisz na gg 5086051
-Irena-
Witam, zrobiłam właśnie logowanie do swojej strony. Teraz chciałabym, aby osoba zalogowana, która dodaje newsa, podpisywała się wyłącznie za pomocą loginu. Jak to zrobić?

Oto mój panel dodawania newsa, dostępny dla wszystkich:

CODE

<?
extract($_GET);
if(!($db=mysql_connect ("costamcos", "costamcos", "blabla")))die('Nie można się połączyć z serwerem bazy danych: ' . mysql_error());
if(!mysql_select_db('costamcos'))die('Nie znaleziono bazy danych: '. mysql_error());
$sql="INSERT INTO newsy VALUES (NULL, NOW(), '$temat', '$tresc', '$autor');";
if(!(mysql_query ($sql, $db)))die('Błąd modyfikacji bazy: ' . mysql_error());
mysql_close ($db);
header("Refresh: 2; index.php?id=newsy"); // przekierowanie
?>


Oraz strona, na której wyświetlają się newsy:

CODE

<div align="left"><p align="justify">
<?
if(!($db=mysql_connect ("costamcos", "costamcos", "blabla")))die('Nie można się połączyć z serwerem bazy danych: ' . mysql_error());
if(!mysql_select_db('costamcos'))die('Nie znaleziono bazy danych: '. mysql_error());
$sql = 'SELECT * FROM newsy ORDER BY czas DESC LIMIT 0, 30' ;
if(!($q=mysql_query ($sql, $db)))die('Błąd Zapytania: ' . mysql_error());
while ($row = mysql_fetch_array($q, MYSQL_ASSOC))
{
printf("<br><h1>%s<font size=1pt><i>&nbsp;%s</i></h1></font>", $row["temat"],$row["czas"]);
printf("<div align=justify>%s</div>", $row["tresc"]);
printf("<i>%s</i>", $row["autor"]);
printf("<div align=right><a href=\"index.php?id=komentarze&id_newsa=%s\">Komentarze <img src=/grafika/dymek.gif border=0px/>&nbsp;</a></div><br/>",$row["id"]);
}
mysql_free_result($q);
mysql_close ($db);
?>
</div>


W sumie nie znam się na tym, za tę część roboty odpowiedzialny jest mój brat. Jak na razie wszystko działa, ale mogłoby na pewno działać jeszcze lepiej tongue.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.