Rejestracja

Jeśli posiadasz wiedzę, którą chcesz się podzielić z innymi, to ten dział jest dla Ciebie.
q7max
Początkujący
Początkujący
Posty: 3
Rejestracja: 1 paź 2017, o 16:35
Maszyna: pc

Rejestracja

Post autor: q7max »

Witam,
Mam pytanie czy jest taka możliwość w programie, aby po rejestracji użytkownika, automatycznie tworzyła się podstrona użytkownika ?
Z tutoriali na yt widziałem jedynie, że po rejestacji należy w programie utworzyć ręcznie podstronę dla nowego użytkownika
Na_razie2
Początkujący
Początkujący
Posty: 44
Rejestracja: 7 sie 2016, o 21:48

Re: Rejestracja

Post autor: Na_razie2 »

Nie rozumiem o czym piszesz.Daj link do materiału na Youtubie albo opisz dokładniej o co ci chodzi
q7max
Początkujący
Początkujący
Posty: 3
Rejestracja: 1 paź 2017, o 16:35
Maszyna: pc

Re: Rejestracja

Post autor: q7max »

Dla przykładu facebook

Jeżeli ktoś rejestruję się na fb, to automatycznie tworzy mu się strona profilowa.
Stąd moje pytanie czy da się jakoś zrobić aby automatycznie tworzyła się strona profilowa, żeby nie trzeba było za każdym razem tworzyć w programie strony dla nowego użytkownika, tak jak w tutorialu poniżej

https://youtu.be/XCh7acSwXng?t=19m49s
Na_razie2
Początkujący
Początkujący
Posty: 44
Rejestracja: 7 sie 2016, o 21:48

Re: Rejestracja

Post autor: Na_razie2 »

Nie jest mi znane gotowe takie rozszerzenie do WWB o takiej funkcjonalności, co nie znaczy że nie istnieje być może któryś z wielu użytkowników takie coś stworzył.
Ale da się takie coś zrobić czy to w formie uproszczonej czy też rozbudowanej (wypasionej),to zależy co na tej stronie miało by się znajdować.
Jeśli za punkt wyjscia przyjąć taką metodę że tworzone byłby z automatu oddzielne strony dla każdego usera (katalog dla użytkownika+strona) to da się takie coś wykonać że po zalogowaniu użytkownik zostaje przekierowany na swoją stronę.
Jako punkt wyjścia zastosowałem gotowy szablon z programu (demo/login)
Strony które musiałem w tym celu przerobić:

1.Logowanie
Rozbicie obiektu Logowanie na formularz,usunięcie z HTML linii z $suces_page... (chyba 4 linia)
linię ''header('Location: '$suces_page');"" zamieniono na

Kod: Zaznacz cały

header('Location: '.'./strony_users/'.$username.'/'.$username.'.php');
powodować to będzie przekierowanie w zależności kto się zaloguje.

2 zakładanie konta (Signup)
dodano kod "include 'create_user.php';" jest to dodatkowy skrypt który tworzy katalog dla użytkownika (nazwa taka jak login),kopiuje plik matrycę o nazwie "szablon.php" do tego katalogu, zmienia mu nazwę na 'username.php' (username = takie jak login użytkownika),otwiera plik i dopisuje na początku
zmienną

Kod: Zaznacz cały

<?php
$users = array("users", "admin");
?>
gdzie users jest faktyczną nazwą użytkownika (kogin taki jaki podał użytkownik zakładając konto) będzie to powodowało że inny zalogowany użytkownik nie wejdzie na stronę (oprócz użytkownika admin) bo dodano na stronie szablonn.php kawałek kodu:

Kod: Zaznacz cały

if (!in_array($_SESSION['username'], $users))
{
   header('Location: ./../../login.php');
   exit;
}
Plik szablon może mieć budowę statyczną lub dynamiczną to zależy od ciebie co w nim umieścisz i co chcesz osiągnąć.
I może być dodatkowo modyfikowany w trakcie kopiowania go i tworzonego katalogu użytkownika (to zależy co umieścisz w skrypcie create_user.php)

Na razie tyle...cdn
Ostatnio zmieniony 6 paź 2017, o 20:39 przez Na_razie2, łącznie zmieniany 1 raz.
q7max
Początkujący
Początkujący
Posty: 3
Rejestracja: 1 paź 2017, o 16:35
Maszyna: pc

Re: Rejestracja

Post autor: q7max »

Dzięki wielkie za pomoc :)
Na_razie2
Początkujący
Początkujący
Posty: 44
Rejestracja: 7 sie 2016, o 21:48

Re: Rejestracja

Post autor: Na_razie2 »

cd..
..zakładanie konta (Signup)
Miejsce dołączenia (includowania pliku 'create_user.php') w tym a nie innym miejscu jest podyktowane tym że ustawiłem aktywowanie konta na "automatic" czyli od razu po wysłaniu (poprawnych) danych z formularza zakładania konta, gdyby aktywacja była ustawiona na zwrotny link aktywacyjny (wysyłany w mailu) to oczywiście miejsce dołączenia tego pliku należało by przenieść w miejsce gdzie jest on zweryfikowany pozytywnie i dopiero wtedy tworzony byłby katalog i strona użytkownika. W przypadku ustawienia aktywacji na "Administrator" zasadnym by było dołączanie tego pliku we właściwym miejscu w kodzie "loginadmin.php".

Podejście tego typu że tworzony jest indywidualny katalog i strona użytkownika ma sens raczej w przypadku małej liczby aktywnych kont użytkowników.
Znacznie lepszym rozwiązaniem było by generowanie strony użytkownika dynamiczna na podstawie danych i ustawień zapisanych w faktycznej bazie danych co znacznie mniej obciąża serwer niż wszelkie operacje na plikach.

Inne rzeczy które należało by przemyśleć

3. Menu
W menu oczywiście można dodać kod aby był wyświetlany link do strony zalogowanego użytkownika jeśli jest on zalogowany (o czym mowa w poście na forum).

4. Administracja
Do zarządzania użytkownikami należało by zapewne dodać jakiś fragment kodu co w przypadku gdy administrator usuwa konto użytkownika-czy samo konto czyli loginy z bazy czy również katalog użytkownika wraz ze stroną i inną zawartością, tą inną zawartością mogły by być np.pliki uploadowane przez usera.

Inne
Strona szablon nie jest publikowana zamiast niej wrzucono plik tej strony po edycji - zmieniono w HEAD link do pliku "szablon.css" na "../szablon/szablon.css" aby wszystko się zgadzało po przekopiowaniu strony do katalogu użytkownika. Można by było pozostawić starą wartość i kopiować również plik stylu wraz ze stroną i mógłby być to plik stylu jeden z kilku dostępnych z różnymi ustawieniami (np inna kolorystyka,inne czcionki ect. w zależności od preferencji użytkownika.

O takie coś.. [strona nie istnieje].
ODPOWIEDZ