Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> autoryzacja bez mysql
olszam
post 3.03.2012, 15:21:56
Post #1





Grupa: Zarejestrowani
Postów: 342
Pomógł: 23
Dołączył: 20.01.2011
Skąd: Chełm

Ostrzeżenie: (0%)
-----


szukam jakiegoś skryptu na autoryzacje bez używania mysql(wiem że mało bezpieczne ale takie chcę) gdzie przy poprawnym logowaniu przekieruje mnie do danej strony i żebym mógł korzystać z mniej więcej takiego warunku
  1. if(!isset($_SESSION['zalogowany']){skrypt admina}else{skrypt gościa}


żeby było bardziej zrozumiałe to chcę ten skrypt przerobić
  1. <body background="171014stucco_03(48).jpg"></body>
  2. <?php
  3. require 'polacz1.php';
  4.  
  5. if(isset($_SESSION['zalogowany'])) {
  6. //echo "Zalogowany jako, ".$_SESSION['email'];
  7. header("Location: index.php");
  8. }else{
  9.  
  10. if(isset($_POST['wyslij'])) {
  11.  
  12.  
  13. FROM uzytkownik WHERE email = '".$_POST['email']."'
  14. && haslo = '".$_POST['haslo']."' && idurzytkownik = '".$_POST['idurzytkownik']."' ")) > 0) {
  15.  
  16.  
  17. if(mysql_num_rows(mysql_query("SELECT * FROM uzytkownik
  18. WHERE email = '".$_POST['email']."'
  19. && haslo = '".$_POST['haslo']."' && idurzytkownik = '".$_POST['idurzytkownik']."'")) > 0 ) {
  20.  
  21.  
  22. $_SESSION['zalogowany'] = true;
  23. $_SESSION['email'] = $_POST['email'];
  24. $_SESSION['idurzytkownik'] = $_POST['idurzytkownik'];
  25. echo "Jesteś zalogowany.";
  26. header("Location: index.php");
  27.  
  28.  
  29. } else {
  30.  
  31. echo "Złe hasło, proszę spróbować ponownie";
  32. }
  33. } else {
  34. echo "Nie ma takiego użytkownika";
  35. }
  36. } else {
  37.  
  38. ?>
  39. <form method='POST' action='login.php'>
  40. <b>ID:</b> <input type='text' name='idurzytkownik'><br>
  41. <b>E-mail:</b> <input type='text' name='email'><br>
  42. <b>Hasło:</b> <input type='password' name='haslo'><br>
  43. <input type='submit' value='Zaloguj' name='wyslij'>
  44. </form>
  45.  
  46. <?php
  47. }
  48. }
  49. ?>


Ten post edytował olszam 3.03.2012, 15:27:43
Go to the top of the page
+Quote Post
Niktoś
post 3.03.2012, 15:45:53
Post #2





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


W PHP nie ma za wiele możliwości.Może zainteresuj się KERBOS ,jeśli to ma być całkowincie niezależny od bazy danych system autoryzacji.
Nie jest łatwy zaimplementowaniu jeśli chodzi o PHP.

Ten post edytował Niktoś 3.03.2012, 15:46:34
Go to the top of the page
+Quote Post
skowron-line
post 3.03.2012, 15:47:44
Post #3





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Możesz np. w pliku trzymać pary
Login|md5(haslo) (md5 to tylko przykład chodzi o to żebyś skumał że chodzi o skrót)
i przy logowaniu szukasz w pliku
albo najbanalniej
  1. $file = file('plik_z_parami.txt');
  2. if(in_array($file, $login .'|'. md5($haslo)))
  3. {
  4. // zaloguj
  5. }


Ten post edytował skowron-line 3.03.2012, 15:47:53


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
olszam
post 3.03.2012, 22:44:04
Post #4





Grupa: Zarejestrowani
Postów: 342
Pomógł: 23
Dołączył: 20.01.2011
Skąd: Chełm

Ostrzeżenie: (0%)
-----


Cytat(skowron-line @ 3.03.2012, 15:47:44 ) *
Możesz np. w pliku trzymać pary
Login|md5(haslo) (md5 to tylko przykład chodzi o to żebyś skumał że chodzi o skrót)
i przy logowaniu szukasz w pliku
albo najbanalniej
  1. $file = file('plik_z_parami.txt');
  2. if(in_array($file, $login .'|'. md5($haslo)))
  3. {
  4. // zaloguj
  5. }

do tego skryptu mam rozumieć że na początku tworzę zwykły formularz na logowanie potem tam gdzie $login i $haslo to będą te $_POST
i jeśli mi zaloguje to w miejsce //zaloguj mogę wstawić to przekierowanie i ten $_SESSION['zalogowany'] = true;
pytam się bo nie wiem czy dobrze rozumiem jestem początkujący jeśli chodzi o php.
Go to the top of the page
+Quote Post
skowron-line
post 4.03.2012, 10:52:00
Post #5





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


1. Tworzysz plik pass.txt (nazwa jest najmniej ważna)
2. Formularz rejestracji
2a. Dopisujesz do pliku login i haslo przekazane z $_POST
3. Formularz logowania
3a. Sprawdzasz w pliku czy dana para login|haslo istnieje w sposób jaki pokazałem wyżej.
4. Jeżęli istnieje taka para to ustawiasz w $_SESSION co tam sobie życzysz


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
olszam
post 4.03.2012, 13:55:02
Post #6





Grupa: Zarejestrowani
Postów: 342
Pomógł: 23
Dołączył: 20.01.2011
Skąd: Chełm

Ostrzeżenie: (0%)
-----


ok thx a co do formularza rejestracji to nie będzie mi potrzebny bo i tak logowanie będzie tylko dla admina smile.gif
Go to the top of the page
+Quote Post
Orzeszekk
post 4.03.2012, 14:20:48
Post #7





Grupa: Zarejestrowani
Postów: 260
Pomógł: 14
Dołączył: 8.09.2011

Ostrzeżenie: (0%)
-----


mozesz sobie utworzyc webservice na innej stronie (pod inna domena np gdzie masz dostep do bazy), autoryzowac za jego pomoca, a nastepnie wynik autoryzacji zapisywac w sesji i z niego korzystac, chociaz pewnie nie o to chodzilo smile.gif

Ten post edytował Orzeszekk 4.03.2012, 14:24:59


--------------------
"The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time."
Tom Cargill, Bell Labs
Go to the top of the page
+Quote Post
Niktoś
post 4.03.2012, 14:26:26
Post #8





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


@Orzeszekk , ja zaproponowałem KERBOS ,działa to na podobnej zasadzie jak webservis ,czyli autoryzacja oparta o zewnętrzny serwis,przynajmniej ja to tak rozumie, ale weź pod uwagę, że użytkownik jest początkujący.Wdrożenie KERBOSa ,czy webservica będzie dla Niego trudne.
Go to the top of the page
+Quote Post
olszam
post 4.03.2012, 15:10:56
Post #9





Grupa: Zarejestrowani
Postów: 342
Pomógł: 23
Dołączył: 20.01.2011
Skąd: Chełm

Ostrzeżenie: (0%)
-----


Cytat(skowron-line @ 3.03.2012, 15:47:44 ) *
Możesz np. w pliku trzymać pary
Login|md5(haslo) (md5 to tylko przykład chodzi o to żebyś skumał że chodzi o skrót)
i przy logowaniu szukasz w pliku
albo najbanalniej
  1. $file = file('plik_z_parami.txt');
  2. if(in_array($file, $login .'|'. md5($haslo)))
  3. {
  4. // zaloguj
  5. }

a co do tego skryptu jest jeden mały błąd w in_array $file powinien byc na końcu
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.07.2025 - 22:36