![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 27.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Chcialbym stworzyc skrypt ktory logowalby zarejestrowanych uzytkownikow do serwisu. Sprawa wyglada banalnie bo mozna by bylo to zrobic tak: [php:1:e2ecedd0b5]<?php if($login==$login1 || $haslo==$haslo1): echo("oki"); else: echo("blad"); ?>[/php:1:e2ecedd0b5] ale sprawa przedstawia sie inaczej gdyz ja w serwisie bede mial zauzmy z 50 osob ... jak to teraz zrobic szkoda sie chyba meczyc: [php:1:e2ecedd0b5]<?php if($login==$login1 || $haslo==$haslo1 $login==$login2 || $haslo==$haslo2 ..... $login==$login50 || $haslo==$haslo50 ): echo("oki"); else: echo("blad"); ?>[/php:1:e2ecedd0b5] Zwlaszcza ze mam plik np. liczba.inc w ktorym jest podany aktualny status zarejesrowanych ludzi czyli: [php:1:e2ecedd0b5]<?php include("liczba.inc"); if(.........................): else: ?>[/php:1:e2ecedd0b5] Tylko wlasnie co dalej?? Nie za bardzo wiem jak mam to zrobic Prosze o jakas rade lub tez Pomoc ![]() Z gory THx |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 225 Pomógł: 18 Dołączył: 30.06.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
robisz to z wykorzystaniem baz danych czy plików tekstowych?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 0 Dołączył: 9.07.2003 Skąd: Lublin city Ostrzeżenie: (0%) ![]() ![]() |
Zrob to z wykorzystaniem bazy danych, bedzie o wiele lepiej i prosciej.
-------------------- (none)
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 764 Pomógł: 3 Dołączył: 30.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
przede wszystkim masz blad w pierwszym przykladzie kodu, nie rob czego takiego:
[php:1:05bcca7fdc]<?php if($login==$login1 || $haslo==$haslo1): echo("oki"); else: echo("blad"); ?>[/php:1:05bcca7fdc] druga linia kodu oznacza, ze: wez z fomularza logowania zmienna login i sprawdz czy rowna sie tej podanej w (najprawdopodobniej) pliku tekstowym lub wez haslo z formularza i sprawdz czy jest takiego samo jak w pliku... wynikiem tego programu bedzie logowanie kazdego uzytkownika, ktory wystarczy, ze poda swoj login - haslo (nie wazne czy jest poprawne czy tez zle) jest w tej chwili nie wazne; cos takiego bedzie logowac kazdego uzytkownika gdyz zapewnie ten poda dobra nazwe pod jaka wchodzi na strone www zamiast tego powinienes uzyc znaku: && - and.... pozdrawiam.... |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 27.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
no tak mialo byc &&
![]() $ile=0 if($login==$login$ile && $haslo==$haslo$ile): echo("jo"); else $ile++ I teraz $ ile=1 i tak sparwdza az do 50 ( wynika to z tego pliki liczba.inc... ) taki mialbym pomysl tylko jestem za "slaby" aby go zrealizowac czy takie cos jest wogule prawdopodobne ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 764 Pomógł: 3 Dołączył: 30.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
ok, prosty, oprarty na pliku system autoryzacji....
1) struktura przykladowego pliku, najpierw nazwa uzytkownika, pozniej haslo Kod michal|ania
leszek|domek grzesiek|samochod ania|pc 2) plik loguj.php [php:1:dbf18941ba]<?php //rozpoczynam sesje session_start(); //w ponizszych dwoch zmiennych przechowujesz nazwe uzytkownika oraz haslo z formularza $uzytkownik = "grzesiek"; $haslo = "samochod"; $nazwa = "plik.txt";//nazwa pliku ![]() if (file_exists($nazwa)) { $plik = file($nazwa); //wczytuje plik.txt do tablicy $ileWierszy = count($plik); //zliczam ilosc wierszy w pliku //rozpoczynam petle for ($i = 0; $i < $ileWierszy; $i++) { //dany element tablicy (jeden wiersz pliku) na tablice napisow (rozdzielonych znakiem "|") $wiersz = explode("|", $plik[$i]); //porownuje kolejno wpisy z pliku z danymi z formularza //dodatkowo usuwam biale znaki ze zmiennych z plku if ( (trim($wiersz[0]) == $uzytkownik) && (trim($wiersz[1]) == $haslo) ) { session_register("uzytkownik");//rejestruje zmienna //przerywam operacje gdyz w momencie gdy znajdzie uzytkownika nie ma sensu aby sie petla dalej wykonywala break; } } } else echo "Nie ma pliku."; ?>[/php:1:dbf18941ba] 3) na zakonczenie: mysle, ze komentarze w kodzie aplikacji wystarcza Ci; mysle, ze nie musze pisac, ze jest to dosc prosty system; nie przechowuj tego pliku w drzewie katalogow serwera (z innymi plikami php) gdyz (jezeli nie ustawisz serwera tak aby pliki txt rowniez parsowal) gdy mozna wowczas go wyswietlic w przegladarce w calej okazalosci z napisaniem formularza i reszty rzeczy mam nadzieje, ze sobie poradzisz... i jeszcze dobra rada: slepy... wez sie do roboty ![]() pozdrawiam.... ps. nie testowalem ale powinno chodzic |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 0 Dołączył: 9.07.2003 Skąd: Lublin city Ostrzeżenie: (0%) ![]() ![]() |
Proponuje dac strukture pliku taką:
Kod michal|5f59ac736640f43e61c6070284bf1c06
leszek|f633c0c0fb3cb2c0391a2b99bb454f92 grzesiek|5056c25600a702ccf836aae5b676707a i dac mu inne rozszerzenie pozniej tylko zmienic: Kod .........
if (costam && $pobrane_haslo_z_pliku == md5($haslo_podane_przez_usera)){ ......... -------------------- (none)
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 764 Pomógł: 3 Dołączył: 30.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
no tak, mozna uzyc algorytmu md5 do zaszyfrowania hasla...
a plik (plik.txt) mozna zmienic na: plik.php |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 273 Pomógł: 0 Dołączył: 5.05.2003 Skąd: Mazury Ostrzeżenie: (0%) ![]() ![]() |
Najwydajniej będzie jak struktura pliku będzie sie opierała na jednej linii, czyli:
Kod login1|haslo1||login2|haslo2||login3|haslo3
W ten sposób bedziesz mógł odczytać pierwszą linię, co zajmię mniej czasu, a potem użyć funkcji explode. Ale najpierw na podwójnej kresce, a potem pojedynczej. -------------------- <<< EB >>>
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat no tak, mozna uzyc algorytmu md5 do zaszyfrowania hasla...
a plik (plik.txt) mozna zmienic na: plik.php Może nie ma to praktycznego znaczenia i pewnie był to skrót myślowy, ale forum to czytają również początkujący więc małe sprostowanie żeby potem niektórzy nie mylili faktów. Funkcja md5 nie szyfruje haseł, plików ani niczego innego. Ona oblicza 128-bitowy skrót podanego ciągu bajtów w sposób praktycznie uniemożliwiający znalezienie oryginalnego ciągu danych. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 16:48 |