![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 3 Dołączył: 13.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mam skrypt logowania napisany który działa poprawnie. Przypisuje w sesji id do id uzytkownika z bazy. W związku z tym mam kilka pytan , czy istnieje jakas mozliwosć żeby ktoś sobie wpisał session['id']=1 i sie zalogował pod uzytkownikiem nr 1 w bazie oraz czy istnieje mozliwosc wyciagniecia specyficznego ciagu znaków z sesji i wciagniecia do bazy i porównania z sesjami u uzytkownika??
Pozdrawiam set4812 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 6 Dołączył: 26.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
No pewnie (IMG:style_emoticons/default/smile.gif)
Zrób sobie tabelę w bazie danych np "sesje' tam będziesz przechowywał nr id sesji id usera itd i porównywał z danymi ze sesji. Wtedy masz już większą pewność, że nikt nie podmieni sesji A co do tego ciągu, to możesz np md5 albo sha1 zmielić IP usera przeglądarkę i aktualny czas i to by był taki hash, potem zapisujesz go w tabeli sesje w mysql i u usera w session i porównujesz (IMG:style_emoticons/default/smile.gif) Ten post edytował kamillo121 26.09.2010, 10:48:02 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 10.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
pokaz skrypt to zobaczymy
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 3 Dołączył: 13.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Kod do optymalizacji całkowitej (IMG:style_emoticons/default/tongue.gif) . Bede go przerabiał na klasę. Co w nim mozna znienic zeby bardziej zabezpieczyć(IMG:style_emoticons/default/questionmark.gif) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Sesji nikt ci nie nadpisze. Nie ma możliwości żebym napisał sobie skrypt, w którym stworzę zmienną $_SESSION['id']=1 i się zaloguję dzięki niemu na twoją stronę. Sesja jest indywidualna dla każdego jej wywołania. Czyli dla każdej osoby jest ona osobna, niewspółdzielona i żaden użytkownik nie ma ingerencji w sesje innego użytkownika.
W tym kodzie, co pokazałeś, to na początek zmień logowanie. Nie wyciągaj wszystkich użytkowników i wtedy sprawdzaj czy istnieje taki, jaki się chce zalogować, tylko stwórz zapytanie w stylu:
oczywiście takie dane trzeba sprawdzić. Do hasła polecam hashowanie np sha1, wtedy masz
i oczywiście jakaś walidacja loginu, albo wyrażenie regularne, gdzie sprawdzasz, czy login zawiera tylko znaki dopuszczalne albo przynajmniej http://pl2.php.net/manual/en/function.mysq...cape-string.php Po wykonaniu zapytania sprawdzaj czy został wyciągnięty rekord z bazy. Jeżeli tak -> zaloguj, nie -> brak użytkownika. Ten post edytował bastard13 26.09.2010, 15:20:28 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 3 Dołączył: 13.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
przechodze 100 na obiektowo i w stosunku do tego jeszcze zadam kilka pytan czy da sie przerwać wykonywanie klasy gdy wszystkie funkcje wykonywuja sie w konstruktorze?? A co do haseł w md5 będę kodował. login i hasło escepe string przeleciec. łaczenie z baza chce oddzielenie zrobic jak je uzywac w klasie jezeli mam je w oddzielnym pliku, uzywam mysqli.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1) Przerywanie wykonywania funkcji - return bądź exit()
2) Jeżeli używasz md5 lub czegoś podobnego to nie potrzeba ci już escape. 3) funkcje include(), require(), require_once() - dołączanie pliku. Żeby je używać w klasie możesz przekazać jako argument do konstruktora/funkcji klasy. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 3 Dołączył: 13.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ja chce miec w całej Clasie zeby funkcje miały połaczenie z baza jak i konstruktor, czyli mam zaincludowac czy jakos przekazac, prosze o jakis przykład
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 13:40 |