RejestracjaTrzeba samemu napisać, a więc, baza danych?
Jeżeli tak:
Tworzymy tabelę z użytkownikami, a w niej:
- id (automatyczna wartość) - klucz podstawowy
- nazwa użytkownika
- hasło (zakodowane, np md5)
- email
- avatar (adres do niego)
- dodatkowe pola (np. zainteresowania, itp.)
najpierw tworzymy w HTML formularz POST
potem w PHP sprawdzamy poprawność danych(np. składnia email, nazwa uzytkownika nie jest w bazie), aby skrypt był bezpieczny
wgrywamy z formularza avatar na serwer do katalogu tmp w naszej aplikacji
sprawdzamy wymiary (czy nie jest za duży), jeżeli nie, przenosimy go folderu avatary w aplikacji i zmieniamy nazwę, tak, aby była unikalna, przykładowo 2 sposoby:
1. "avatar-"+ id użytkownika / nazwa użytkownika
2. md5(time())
W zmiennej zapisujemy adres do zdjęcia(avataru)
gdy wszystko się powiedzie zapisujemy rekord w bazie (MySQL/MySQLi: INSERT INTO('',itd. oraz zmienna z adresem do zdjęcia))
Wracamy na główną
LogowanieTworzymy tabelę sesje, a w niej:
- id (automatyczna wartość) - klucz podstawowy
- id użytkownika
- id sesji (identyfikator $_SESSION)
Skrypt:
Wykonujemy skrypt z 2 warunkami: zaloguj i wyloguj:
dla zaloguj:
Formularz login i hasło
(dane należy filtrować)
Po wciśnięciu na zaloguj ma sprawdzić, czy login jest w bazie
Jeżeli tak, sprawdź, czy zakodowane md5 hasło formularza jest takie same jak md5 w bazie
Jeżeli tak, zrób $_SESSION['uid'] = id użytkownika
Dopisz do tabeli sesje użytkownika
Przejdź do strony głównej
dla wyloguj:
Wykasuj sesję użytkownika z bazy
Usuń zmienną $_SESSION['uid']
Przejdź do strony głównej
Ale się opisałem

To taki czysto konstrukcyjny opis, nie jest pozbawiony błędów, m. in.
Użytkownik będzie cały czas zalogowany.
Jednak efekt końcowy będzie zależał od inwencji twórczej autora. Myślę, że wszystko wytłumaczyłem
Pozdrawiam,
Petermechanic