PHP Nuke Tworzenie witryn WWW phnuww


IDZ DO
IDZ DO
PRZYKŁADOWY ROZDZIAŁ
PRZYKŁADOWY ROZDZIAŁ
PHP-Nuke.
SPIS TRESCI
SPIS TRESCI
Tworzenie witryn WWW
Autor: Douglas Paterson
KATALOG KSIĄŻEK
KATALOG KSIĄŻEK
Tłumaczenie: Paweł Buczek, Radosław Meryk
ISBN: 83-246-0645-9
KATALOG ONLINE
KATALOG ONLINE
Tytuł oryginału: Building Websites With Php-nuke
Format: B5, stron: 368
ZAMÓW DRUKOWANY KATALOG
ZAMÓW DRUKOWANY KATALOG
Przykłady na ftp: 38614 kB
Zbuduj własną witrynę WWW, wykorzystując PHP-Nuke
TWÓJ KOSZYK
TWÓJ KOSZYK
" Zainstaluj pakiet PHP
DODAJ DO KOSZYKA
DODAJ DO KOSZYKA
" Nuke i skonfiguruj go
" Dodaj artykuły i zarządzaj użytkownikami witryny
" Rozszerz możliwoSci pakietu, tworząc własne moduły
CENNIK I INFORMACJE
CENNIK I INFORMACJE
Rosnąca w imponującym tempie popularnoSć internetu sprawiła, że witryny WWW
coraz częSciej zakładane są przez osoby bez doSwiadczenia programistycznego.
ZAMÓW INFORMACJE
ZAMÓW INFORMACJE
Doskonałym ułatwieniem dla nich mogą być gotowe pakiety umożliwiające  przy
O NOWOSCIACH
O NOWOSCIACH
minimalnym nakładzie pracy i niewielkiej wiedzy na ten temat  uruchomienie nawet
bardzo rozbudowanej witryny WWW. Jednym z najpopularniejszych tego typu pakietów
ZAMÓW CENNIK
ZAMÓW CENNIK
jest PHP-Nuke. Ten stworzony w języku PHP i rozprowadzany na licencji open source
system portalowy służy wielu twórcom jako baza do budowy witryn internetowych.
Książka  PHP-Nuke. Tworzenie witryn WWW szczegółowo prezentuje działanie tego
CZYTELNIA
CZYTELNIA
systemu i wskazuje wszystkie jego możliwoSci. Czytając ją, nauczysz się budować
serwisy internetowe przy użyciu PHP-Nuke. Dowiesz się, jak zainstalować system,
FRAGMENTY KSIĄŻEK ONLINE
FRAGMENTY KSIĄŻEK ONLINE
skonfigurować go oraz uruchomić prostą witrynę. Poznasz sposoby umieszczania na
stronach poszczególnych modułów PHP-Nuke, zarządzania użytkownikami i treSciami
artykułów, tworzenia forów dyskusyjnych i sond oraz łączenia wszystkich elementów
PHP-Nuke w rozbudowany portal. Zobaczysz też, jak można zmieniać szatę graficzną
portalu i tworzyć własne moduły.
Na treSć książki składają się następujące zagadnienia:
" instalacja PHP-Nuke
" uruchomienie pierwszej strony
" zarządzanie blokami i modułami
" zakładanie kont użytkowników
" tworzenie i publikowanie artykułów
Wydawnictwo Helion
" zarządzanie treScią portalu
ul. KoSciuszki 1c
" korzystanie z motywów
44-100 Gliwice
" tworzenie własnych modułów w języku PHP
tel. 032 230 98 63
JeSli chcesz błyskawicznie stworzyć rozbudowaną aplikację internetową,
e-mail: helion@helion.pl
ta książka jest właSnie dla Ciebie
Spis treści
O autorze 9
Wprowadzenie 11
Rozdział 1. Wprowadzenie do PHP-Nuke 15
Możliwości PHP-Nuke 16
Wrażenia gości 16
Wrażenia administratorów 17
Czym dokładnie jest PHP-Nuke? 18
Struktura modułowa 18
Interfejs z motywami graficznymi 18
Wielojęzyczny interfejs 18
PHP-Nuke jako system zarządzania treścią o otwartym kodzie zródłowym 19
Otwarty kod zródłowy (open source) 19
System zarządzania treścią 20
Otrzymywanie pomocy od społeczności 20
Portal o Dinozaurach 21
Podsumowanie 22
Rozdział 2. Instalacja PHP-Nuke 23
Pobieranie PHP-Nuke 23
Rozpakowywanie PHP-Nuke 24
Pobieranie poprawek 25
Instalowanie poprawek 26
Polonizacja aplikacji PHP-Nuke 27
Przygotowywanie bazy danych dla PHP-Nuke 27
Tworzenie bazy danych 28
Tworzenie użytkownika bazy danych 29
Wypełnianie bazy danych 30
Konfiguracja PHP-Nuke 33
Umieszczanie plików PHP-Nuke w katalogu głównym serwera internetowego 34
Spis treści
Testowanie instalacji 35
Problem z połączeniem z bazą danych 36
Brak danych w bazie 36
Wciąż masz problemy? 37
Podsumowanie 37
Rozdział 3. Twoja pierwsza witryna 39
Twoja nowa strona domowa 39
Bloki 41
Moduły 42
Garść domyślnych modułów 43
Tworzenie superużytkownika 44
Pierwsze kroki w administrowaniu 46
Nowa wiadomość powitalna 47
Edytowanie tekstu w PHP-Nuke 49
Ograniczanie dostępu użytkownikom 53
Podsumowanie 55
Rozdział 4. Zarządzanie witryną 57
Twoja witryna, Twoja baza danych 57
Obszar administracyjny 58
Ustawienia witryny 61
Pokruszone ciasteczko 65
Kopia zapasowa bazy danych 65
Zarządzanie blokami 68
Typy bloków 69
Obszar administracji blokami 70
Dodawanie bloków 76
Zarządzanie modułami 84
Edytowanie właściwości modułów 88
Dodawanie nowych modułów 90
Podsumowanie 92
Rozdział 5. Zarządzanie użytkownikami 93
Składniki użytkownika 94
Konfiguracja nowego użytkownika 94
Subskrypcja użytkownika 96
Kod graficzny przy rejestrowaniu użytkownika 101
Kto jest kto? 103
Moduł Your Account 105
Edycja profilu użytkownika 106
Konfiguracja modułu Your Account 108
Wiadomości prywatne 110
Dzienniki użytkowników 112
Nagradzanie użytkownika 115
Punkty na sprzedaż 116
4
Spis treści
Zarządzanie innymi administratorami 120
Autorzy kontra superużytkownik 120
Tworzenie konta autora 121
Podsumowanie 123
Rozdział 6. Zarządzanie artykułami 125
Artykuł na temat artykułów 126
Przebieg publikacji artykułów 126
Wyszukiwanie i wchodzenie w interakcję z artykułami 127
Porządkowanie artykułów 127
Tematy 128
Kategorie 129
Planowanie tematów i kategorii Portalu o Dinozaurach 129
Zarządzanie tematami 129
Usuwanie tematu 133
Dodawanie artykułów 133
Zarządzanie kategoriami 136
Artykuły z punktu widzenia użytkownika 138
Każdy ma swoje zdanie  komentarze 142
Wyświetlanie swoich komentarzy 146
Nadzór nad wysyłaniem komentarzy 146
Komentarze poddane analizie 153
Dostosowywanie widoku komentarzy 157
Zarządzanie artykułami 161
Edytowanie artykułów 162
Usuwanie artykułów 163
Artykuły wysyłane przez użytkowników 163
Wyszukiwanie artykułów 167
Ze strony głównej 167
Z modułu Topics 167
Z modułu Search 168
Z modułu Stories Archive 168
Z bloku Categories Menu 169
Dodatkowy administrator 170
Punkty i nagrody 171
Wysyłanie informacji o artykułach na Twojej witrynie 171
Sondaże i moduł Surveys 173
Dodawanie sondażu do artykułu 173
Moduł Surveys 175
Zarządzanie ankietami 175
Podsumowanie 176
Rozdział 7. Moduły zarządzające treścią 177
Moduł Content 178
Blok Content 184
Zarządzanie kategoriami 185
Dodatkowy administrator 185
5
Spis treści
Ograniczanie dostępu 185
Punkty i nagrody 185
Moduł FAQ 185
Zarządzanie często zadawanymi pytaniami 188
Blok FAQ 188
Dodatkowy administrator 189
Ograniczanie dostępu 189
Punkty i nagrody 189
Moduł Encyclopedia 189
Zarządzanie encyklopediami 192
Korzystanie z encyklopedii 192
Blok Encyclopedia 194
Dodatkowy administrator 194
Ograniczanie dostępu 194
Punkty i nagrody 195
Moduły Web Links i Downloads 195
Wchodzenie w interakcję z modułem Web Links 199
Sprawdzanie łącza WWW 201
Dodawanie łączy WWW 203
Zarządzanie łączami WWW 204
Blok Web Links 214
Dodatkowy administrator 214
Ograniczanie dostępu 214
Punkty i nagrody 215
Recenzje 215
Wysyłanie recenzji 216
Wchodzenie w interakcję z recenzjami 219
Zarządzanie recenzjami 219
Blok Reviews 221
Dodatkowy administrator 221
Ograniczanie dostępu 221
Punkty i nagrody 221
Porównanie możliwości modułów 221
Podsumowanie 221
Rozdział 8. Zarządzanie forami dyskusyjnymi 223
Struktura forum 223
Obszar administracji modułem Forums 225
Konfiguracja forum 226
Forum z punktu widzenia użytkownika 230
Publikowanie tematu 231
Uprawnienia na forum 234
Tworzenie grup 234
Ustawianie uprawnień na forum 235
Ustawienia uprawnień grupy 237
Dołączanie do grupy 238
Moderowanie forum 240
Konfiguracja moderatora forum 241
Podsumowanie 243
6
Spis treści
Rozdział 9. Dostrajanie wyglądu witryny z wykorzystaniem motywów 245
O czym decydują motywy? 246
Wygląd 246
Układ strony 246
Zarządzanie motywami 247
Struktura plików motywu 248
Instalowanie nowego motywu 248
Usuwanie motywu 249
Od istniejącego motywu do nowego 250
Zaczynamy 250
Szablony i pliki PHP 251
Modyfikowanie nagłówka strony 253
Wykorzystywanie arkuszy stylów 262
Modyfikowanie bloków 270
Modyfikowanie sposobu wyświetlania artykułów 278
Modyfikowanie stopki 288
Dodawanie ikony favicon 289
Włączanie plików użytkownika 290
Wynik strony od początku do końca 291
Podsumowanie 292
Rozdział 10. Programowanie systemu PHP-Nuke 293
Co się dzieje, kiedy użytkownik zażąda strony? 294
Skąd system PHP-Nuke pobiera informacje? 294
Żądanie strony 295
Tworzenie bloków 296
Dostęp do danych w systemie PHP-Nuke 302
Struktura plików i folderu modułu304
Tworzenie modułu do przesyłania danych przez użytkowników 305
Etapy tworzenia modułu 306
Tworzenie folderu modułu 307
Tworzenie tabeli bazy danych 307
Kod obsługi użytkowników  plik index.php 308
Obszar administracji modułem UserSubmissions 325
Tworzenie kodu administracji modułem 329
Rozszerzenia modułu 342
Podsumowanie 343
Dodatek A Instalacja pakietu XAMPP 345
Skorowidz 353
7
5
Zarządzanie
użytkownikami
Jak na razie Twoja strona wygląda dosyć ubogo. Mimo że dodaliśmy kilka nowych bloków, inne
przestawialiśmy, aktywowaliśmy i dezaktywowaliśmy do upadłego różne moduły, to jest coś,
czego nam brakuje (oprócz zawartości  o tym w następnym rozdziale!). Brakuje jeszcze użyt-
kowników strony.
PHP-Nuke dotyczy społeczności sieciowych, a społeczności potrzebują członków. PHP-Nuke
umożliwia odwiedzającym stronę utworzenie i utrzymywanie kont użytkowników, a także do-
dawanie informacji osobistych. Takie są zwykle wymagania, żeby publikować nowe artykuły,
dodawać komentarze czy udzielać się w dyskusjach na forach. PHP-Nuke zatroszczy się także
o zarządzanie utraconymi hasłami.
Konta użytkowników mogą być utworzone przez:
% superużytkownika (to Ty),
% użytkownika, który rejestruje się na Twojej stronie.
W drugim przypadku zostaje wysłany e-mail potwierdzający na konto pocztowe użytkownika.
Ten e-mail zawiera adres URL, który użytkownik musi kliknąć, aby potwierdzić rejestrację
i aktywować konto (musi to być zrobione w ciągu 24 godzin, inaczej rejestracja wygasa).
Kiedy już gość zarejestruje się na Twojej stronie, brama do pełnych możliwości strony stoi
otworem. Goście lub użytkownicy (jak teraz można ich nazwać) będą mogli brać udział w dys-
kusjach na forach, dodawać komentarze do opublikowanych artykułów, jak również mieć dostęp
do części strony zarezerwowanych tylko dla zarejestrowanych użytkowników.
W tym rozdziale opiszemy dodawanie nowych użytkowników przez superużytkownika i reje-
strację nowych użytkowników poprzez standardowy interfejs strony dla gości. Zajmiemy się
również podstawami subskrypcji użytkowników.
PHP-Nuke. Tworzenie witryn WWW
Gdy będziemy mieli już zarejestrowanych użytkowników, przyjrzymy się modułowi Your Account
(Twoje konto), które stanowi osobisty obszar na stronie i pozwala im personalizować Twoją
stronę.
Poznasz również system punktów przydzielanych użytkownikom za aktywność na stronie,
a także korzyści, jakie on przynosi w kontekście grup użytkowników.
Ostatnia część tego rozdziału omawia konfigurację innych kont administratora, które służą do
zarządzania tylko poszczególnymi modułami strony.
Składniki użytkownika
Każdy użytkownik wymaga określonej ilości informacji, żeby go jednoznacznie zidentyfikować
w PHP-Nuke. Wymagane są, jak zwykle, trzy rzeczy:
% Pseudonim  jest to nazwa użytkownika i jednocześnie nazwa, pod którą
użytkownik będzie rozpoznawany w PHP-Nuke.
% Hasło  jest wymagane do weryfikacji, czy użytkownik jest tym, za kogo się podaje.
% Poprawny adres e-mail  na ten adres wysyłany jest e-mail potwierdzający.
Jak tylko konto użytkownika zostało utworzone, użytkownik może oczywiście modyfikować
swoje ustawienia, a także wyświetlać ustawienia innych użytkowników.
Informacje, takie jak adres URL własnej strony użytkownika, identyfikator komunikatora inter-
netowego (MSN, AIM i inne), miejsce pobytu i zainteresowania, również są częścią profilu
użytkownika, ale nie są obowiązkowe.
Domyślnie żaden adres e-mail jakiegokolwiek użytkownika nie jest udostępniany publicznie,
zarówno z powodów bezpieczeństwa, jak i w celu zapobieżenia pozyskania go przez spame-
rów. Użytkownicy mogą określić fałszywy adres elektroniczny, który będzie wyświetlany in-
nym osobom. Najlepiej podać ten adres w formie utrudniającej rozpoznanie go (na przykład
adres_at_domena.com). Prywatność użytkownika zawsze jest chroniona.
Konfiguracja nowego użytkownika
Zarządzanie użytkownikiem zaczyna się od kliknięcia ikony Użytkownicy w menu Admini-
stracja modułów, jak na rysunku 5.1.
Rysunek 5.1. Ikona Użytkownicy
94
Rozdział 5. " Zarządzanie użytkownikami
Kliknięcie tej ikony przenosi Cię do panelu Zarządzanie użytkownikami przedstawionego na
rysunku 5.2. Ten panel składa się z dwóch mniejszych paneli, Edytuj użytkownika i Dodaj
nowego użytkownika, których nazwy mówią same za siebie.
Rysunek 5.2. Panel Zarządzanie użytkownikami
Zaczniemy od konfiguracji nowego użytkownika. Nazwiemy go testuser.
Czas na działanie  ręczna konfiguracja nowego użytkownika
1. Jeśli nie masz otwartego panelu Zarządzanie użytkownikami, kliknij ikonę
Użytkownicy w menu Administracja modułów.
2. Na panelu Dodaj nowego użytkownika wprowadz testuser w pole Pseudonim.
3. Wprowadz Test User w pole Nazwa.
4. Wprowadz swój adres e-mail w pole E-mail.
5. Przewiń w dół do pola Hasło. Wprowadz testuser jako hasło.
6. Kliknij przycisk Dodaj użytkownika. Kiedy strona odświeży się,
zostaniesz przeniesiony prosto do strony głównej administracji.
Co się stało?
Stworzyliśmy nowego użytkownika. Dla tego prostego użytkownika określiliśmy wymagane
pola  Pseudonim, E-mail i Hasło, a także małą część informacji osobistej, czyli Nazwa. Nie-
wypełnienie wymaganych pól oznacza, że użytkownik nie jest ustawiony i będziesz zmuszony
do powrotu oraz uzupełnienia brakujących danych.
Tworzenie nowego użytkownika w taki sposób nie wysyła e-maila potwierdzającego ani tym
bardziej nie wymaga potwierdzenia rejestracji. Gdy tylko klikniesz przycisk Dodaj użytkownika
 pod warunkiem, że wszystkie wymagane pola są wypełnione  użytkownik ma gotowe
konto.
95
PHP-Nuke. Tworzenie witryn WWW
Edytowanie szczegółowych informacji o użytkowniku jest bardzo proste, musisz tylko znać
jego pseudonim. Po prostu wprowadz go w pole Pseudonim panelu Edytuj użytkownika, wybierz
Modyfikuj z pola rozwijanego i kliknij OK! Jeśli nagle poczułeś niechęć do jakiegoś użytkownika,
wprowadz jego pseudonim w pole Pseudonim, zaznacz Skasuj z pola rozwijanego, kliknij OK!
i jego konto będzie usunięte.
Subskrypcja użytkownika
Po utworzeniu użytkownika dostępna jest opcja jego subskrypcji. Wspomnieliśmy już o po-
myśle Subscribed Users (użytkowników subskrybowanych) we wcześniejszych rozdziałach.
Jest to mechanizm ograniczania dostępności modułów w taki sposób, że dostęp do nich mają
tylko określone grupy ludzi, na przykład klienci, którzy zapłacili za dostęp. W tej chwili
w PHP-Nuke jest tylko jedna grupa Subscribed Users, więc gdy użytkownik jest zapisany jako
subskrybent, ma dostęp do modułów zarezerwowanych tylko dla Subscribed Users.
Opcja subskrypcji użytkownika nie jest dostępna, gdy tworzysz go ręcznie, tak jak zrobiliśmy
powyżej. Aby znalezć tę opcję, musisz edytować szczegółowe informacje o użytkowniku.
Wprowadz nazwę użytkownika w panelu Edytuj użytkownika, wybierz Modyfikuj z pola roz-
wijanego i kliknij przycisk OK!
Opcje subskrypcji są na samym dole szczegółowych informacji o użytkowniku, pod opcją
Newsletter (biuletyn). Opcja Subscribe User, którą widać na rysunku 5.3, nie odnosi się do
 prenumeraty biuletynu (za to odpowiedzialna jest opcja Newsletter  można zapisywać
i wypisywać użytkownika z listy dyskusyjnej). Natomiast opcja Subscribe User czyni go elitą
wśród użytkowników strony  użytkownikiem subskrybowanym.
Rysunek 5.3. Opcja Subscribe User
Jeśli subskrybujesz użytkownika, to musisz również określić Subscription Period (czas sub-
skrypcji). Jest to ilość czasu, przez jaką użytkownik pozostanie subskrybentem. Czas ten można
ustawić na rok, dwa lata, trzy i tak dalej, aż do dziesięciu lat. Jeśli ustawisz opcję Subscription
Period na Brak, to użytkownik nie będzie subskrybentem.
Po subskrypcji użytkownika możesz zmienić szczegóły jego subskrypcji z tego samego panelu,
który widać na rysunku 5.4.
Możesz wypisać użytkownika z listy subskrybentów lub wydłużyć czas subskrypcji. Aby skrócić
ten czas, musisz wypisać użytkownika z listy subskrybentów, zapisać go ponownie na tę listę
i wtedy ustawić nowy okres subskrypcji.
96
Rozdział 5. " Zarządzanie użytkownikami
Rysunek 5.4. Szczegóły subskrypcji
Kiedy subskrybowany użytkownik odwiedza moduł Your account (Twoje konto), widzi czas
pozostały do wygaśnięcia subskrypcji, jak na rysunku 5.5  więcej o tym module w dalszej
części rozdziału.
Rysunek 5.5. Informacja o czasie wygaśnięcia subskrypcji
Czas na działanie  rejestracja użytkownika
Tym razem zarejestrujemy się, żeby utworzyć konto użytkownika tak, jak zrobiłby to zwykły
gość. Nazwiemy konto użytkownika userdude. Jeśli nie masz skonfigurowanego serwera pocz-
towego, będziesz musiał na razie postępować według opisu i rysunków. E-mail potwierdzający
wysłany przez PHP-Nuke jest kluczową częścią procesu rejestracji i zawiera specjalny adres
URL, który gość musi kliknąć, żeby aktywować swoje konto. Ale nie martw się  kiedy już
Twoja strona będzie zamieszczona w internecie na jakimś koncie prowadzącym serwery WWW,
z pewnością będziesz miał dostęp do serwera pocztowego.
1. Jeśli wciąż jesteś zalogowany jako superużytkownik, wyloguj się poprzez kliknięcie
ikony Wylogowanie/Wyjście w dowolnej z dwóch części menu administracyjnych
lub kliknij łącze Logout (wylogowanie) w bloku administracyjnym po lewej stronie.
2. Jeśli wciąż jesteś zalogowany jako testuser, wyloguj się poprzez kliknięcie łącza
Your account, a następnie łącza Wylogowanie/Wyjście w pasku nawigacyjnym,
który widać na rysunku 5.6.
Rysunek 5.6. Pasek nawigacyjny z łączem Wylogowanie/Wyjście
97
PHP-Nuke. Tworzenie witryn WWW
Ewentualnie możesz również wprowadzić ręcznie adres URL służący do wylogowania:
http://localhost/nuke/modules.php?name=Your_Account&op=logout1
3. Zostaniesz przekierowany do strony głównej. Teraz kliknij łącze Your account w bloku
Modules (moduły) po lewej stronie. Zostanie wyświetlony panel, jak na rysunku 5.7.
Rysunek 5.7. Po kliknięciu łącza Your account pojawia się panel Logowanie użytkownika
4. Kliknij łącze Rejestracja nowego użytkownika. Zaprowadzi Cię to do panelu Rejestracja
nowego użytkownika. Górna część tego panelu jest widoczna na rysunku 5.8.
Rysunek 5.8. Górna część panelu Rejestracja nowego użytkownika
5. Wprowadz userdude w pole Pseudonim.
6. Wprowadz swój adres e-mail w pole E-mail.
7. Użyjemy słowa userdude także jako hasła2. Możesz również wprowadzić inne,
wymyślone przez siebie hasło. Następnie wprowadz ponownie hasło w pole
Re-type Password (wprowadz ponownie hasło).
1
Pod warunkiem, że istnieje katalog nuke w katalogu głównym serwera i znajduje się w nim plik
modules.php  przyp. tłum.
98
Rozdział 5. " Zarządzanie użytkownikami
8. Kliknij przycisk Nowy użytkownik. Dotarłeś do ostatniego kroku w procesie rejestracji,
który widać na rysunku 5.9.
Rysunek 5.9. Ostatni krok w procesie rejestracji
9. Kliknij przycisk Koniec.
10. Otwórz swojego klienta poczty elektronicznej i odbierz pocztę. Powinieneś otrzymać
list z tematem New User Account Activation. List ten przyjdzie z adresu, jaki dostanie
właściciel witryny PHP-Nuke od firmy świadczącej usługi prowadzenia serwerów WWW.
Zawartość tego e-maila będzie wyglądała mniej więcej tak jak na rysunku 5.10.
Rysunek 5.10. Treść e-maila, który dostaje użytkownik po zarejestrowaniu się na stronie
11. Kliknij łącze w e-mailu lub skopiuj je i wklej do paska adresu swojej przeglądarki.
Zostaniesz przeniesiony do strony New User Activation (aktywacja nowego
użytkownika) i zobaczysz wiadomość przedstawioną na rysunku 5.11.
2
Użycie ciągu znaków, który ma służyć jednocześnie jako pseudonim i hasło, jest złą praktyką z punktu
widzenia bezpieczeństwa  przyp. tłum.
99
PHP-Nuke. Tworzenie witryn WWW
Rysunek 5.11. Potwierdzenie aktywacji konta użytkownika.
12. Kliknięcie łącza this link (to łącze) zaprowadzi Cię z powrotem do strony
Logowanie/Rejestracja użytkownika, i teraz możesz użyć swojego pseudonimu
i hasła, żeby się zalogować.
Co się stało?
Utworzyłeś właśnie nowe konto użytkownika. Strona z logowaniem jest stroną główną mo-
dułu Your Account (Twoje konto). Za chwilę omówimy go dokładniej. Jak można było zgadnąć,
moduł ten zajmuje się wszystkimi funkcjami Twojego konta użytkownika.
Jeżeli gość nie jest zalogowany, zostaje mu wyświetlony panel logowania w chwili, gdy kliknie
on moduł Your Account. Następnie może on wprowadzić swój pseudonim i hasło, aby się za-
logować, lub kliknąć łącze Rejestracja nowego użytkownika w celu zarejestrowania nowego
konta użytkownika  to właśnie zrobiliśmy.
Goście, którzy zapomnieli swojego hasła, mogą kliknąć łącze Zapomniałeś hasła?. Zaprowadzi
ich ono do strony, na której będą mogli podać swój pseudonim. Wtedy zostanie wysłany e-mail
na adres, jaki podali przy rejestracji. List ten będzie zawierał kod potwierdzający, tj. łańcuch
przypadkowo wyglądających dziesięciu znaków. Dzięki temu kodowi będzie można zmienić
swoje hasło. Nowe hasło jest tworzone i przesyłane listem elektronicznym. PHP-Nuke nigdy
nie przechowuje haseł w postaci niezakodowanej w bazie danych, dlatego nie ma możliwości
zdobycia hasła. Następnie użytkownik loguje się, podając nowe hasło, przy czym może je od
razu zmienić na takie, które łatwiej będzie zapamiętać.
Proces rejestracyjny dla użytkownika jest prosty; wymaga od niego tylko pseudonimu, po-
prawnego adresu e-mail i hasła. Jednakże są pewne reguły, które stosuje PHP-Nuke:
% Tylko jedno wystąpienie danego adresu e-mail jest dozwolone w systemie;
jeśli ktoś użyje adresu e-mail, który należy już do innego konta użytkownika,
to ten adres zostanie odrzucony, a gość będzie musiał wybrać inny adres.
% Także tylko jedno wystąpienie danego pseudonimu jest dozwolone w systemie;
system sprawdzi niepowtarzalność pseudonimu, zanim utworzy konto.
Konto użytkownika zostanie utworzone, gdy tylko gość kliknie przycisk Koniec w ostatnim
kroku. Następnie na podany adres wysyłany jest e-mail potwierdzający. Jeśli podany adres e-mail
jest nieprawidłowy lub nie jest to adres e-mail gościa, gość ten będzie musiał utworzyć konto
z nowym adresem e-mail. Jeśli użytkownikowi nie przeszkadza uczucie skrępowania, może
skontaktować się z administratorem strony lub poczekać 24 godziny, żeby konto zostało usu-
nięte z listy kont czekających na aktywację, i spróbować ponownie.
100
Rozdział 5. " Zarządzanie użytkownikami
Można zauważyć, że łącze do aktywacji konta zawiera adres URL Twojej strony PHP-Nuke:
http://localhost/modules.php?name=Your_Account&op=activate&username=
userdudes&check_num=dfd5301dee688bb803b008e9db07b715
Ważne jest, żeby opcja Adres strony w menu Konfiguracja strony była poprawnie skonfigurowana
(omawialiśmy to w rozdziale 4.). Jeśli jeszcze tego nie zrobiłeś, to łącze aktywacyjne będzie wskazywało
złą stronę!
Zwróć uwagę na część check_num w powyższym adresie URL, która określa niezarejestrowa-
nego gościa w systemie. Gdy gość wprowadzi dane o sobie, PHP-Nuke przechowuje je w bazie
danych razem z wartością check_num. Kiedy gość klika powyższy adres URL, PHP-Nuke po-
równuje wartość check_num z tą, która jest przechowywana w bazie danych i jeśli są takie
same, przenosi dane o gościu do właściwej tabeli użytkowników w bazie i usuwa te dane
z tabeli gości czekających na potwierdzenie rejestracji.
To już wszystko na temat tworzenia kont użytkowników. Można również wyłączyć rejestrację
 wtedy tylko administrator będzie mógł tworzyć konta. Jeżeli chcesz dowiedzieć się więcej
na ten temat, przeczytaj informacje na stronie PHP-Nuke HOWTO:
http://www.karakas-online.de/EN-Book/disable-registration.html
Ta sekcja zawiera także inne przydatne porady na temat kont użytkowników.
Kod graficzny przy rejestrowaniu użytkownika
PHP-Nuke umożliwia dodanie kodu bezpieczeństwa na stronach z rejestracją lub logowaniem.
Kod bezpieczeństwa to mały obrazek z paroma cyframi, który jest wyświetlany pod polami
z hasłem. Zaraz poniżej widnieje pole tekstowe służące do tego, aby użytkownik wpisał w nie
cyfry z tego obrazka. Sytuację pokazuje rysunek 5.12.
Rysunek 5.12. Kod bezpieczeństwa na stronie z rejestracją nowego użytkownika
Celem tej metody jest uniemożliwienie automatycznych rejestracji  zgłoszenie nie będzie
przyjęte, gdy cyfry z obrazka nie zostaną wprowadzone w pole Type Security Code (wprowadz
kod bezpieczeństwa). Cyfry wyświetlone na obrazku nie są częścią strony HTML-owej i jedyny
sposób ich odczytania to przeczytanie ich z monitora.
101
PHP-Nuke. Tworzenie witryn WWW
Użycie kodu bezpieczeństwa jest kontrolowane przez ustawienia w pliku config.php w katalogu
głównym programu PHP-Nuke. (To jest ten sam plik, w którym edytowaliśmy ustawienia bazy
danych w rozdziale 2.). Interesuje nas zmienna $gfx_chk. Domyślnie plik wygląda jak poniżej,
co oznacza, że kod bezpieczeństwa nie jest włączony:
$gfx_chk = 0;
Sam plik config.php zawiera opis wartości dla tej zmiennej, jak pokazano w tabeli 5.1.
Tabela 5.1. Opis wartości zmiennej $gfx_chk
Wartość Wpływ na kod bezpieczeństwa
0
Kod bezpieczeństwa nie jest używany
1
Kod bezpieczeństwa pojawia się tylko na stronie logowania administratora (admin.php)
2
Kod bezpieczeństwa pojawia się tylko na stronie logowania zwykłego użytkownika
3
Kod bezpieczeństwa pojawia się tylko na stronie z rejestracją nowego użytkownika
4
Kod bezpieczeństwa pojawia się przy logowaniu użytkownika i rejestrowaniu nowego
użytkownika
5
Kod bezpieczeństwa pojawia się przy logowaniu administratora i użytkownika
6
Kod bezpieczeństwa pojawia się przy logowaniu administratora i rejestrowaniu nowego
użytkownika
7
Kod bezpieczeństwa pojawia się przy każdej możliwości logowania, także na stronie rejestracji
nowego użytkownika
Zatem aby kod bezpieczeństwa pojawiał się tylko przy logowaniu administratora, należy
ustawić zmienną $gfx_chk na 1 i zapisać plik config.php:
$gfx_chk = 1;
Aby obrazek z kodem graficznym działał poprawnie, biblioteka GD musi funkcjonować pra-
widłowo w PHP na serwerze internetowym. Biblioteka GD zajmuje się rysowaniem grafiki
i jeśli nie działa z jakiegokolwiek powodu (możliwe, że nie jest zainstalowana), wtedy grafika
nie będzie wyświetlana poprawnie i nie będzie możliwe odczytanie kodu bezpieczeństwa
z obrazka. W takim przypadku będziesz musiał zmienić ustawienie w pliku config.php, żeby
usunąć kod graficzny.
Jeśli masz swoją stronę na koncie prowadzącym serwery WWW i kod bezpieczeństwa nie jest
wyświetlany wtedy, kiedy powinien być, to należy skontaktować się z obsługą techniczną tego
konta i dowiedzieć się, czy jest to problem z biblioteką GD. Można rozpoznać, czy biblioteka GD
jest zainstalowana, przez użycie funkcji języka PHP phpinfo(). Otwórz edytor tekstu i wprowadz
kod widoczny na listingu 5.1.
102
Rozdział 5. " Zarządzanie użytkownikami
Listing 5.1. Kod wyświetlający informacje o ustawieniach języka PHP
phpinfo();
?>
Zapisz ten plik jako phpinfo.php w katalogu głównym serwera (\xampp\htdocs\). Kiedy przej-
dziesz do tej strony w swojej przeglądarce, zobaczysz pewną liczbę ustawień PHP, łącznie ze
statusem biblioteki GD, jak na rysunku 5.13.
Rysunek 5.13. Status biblioteki GD (GD support)  enabled (włączona)
Jeśli nie widzisz takiej tabeli, jak ta na rysunku 5.13 lub jeśli nie jest napisane enabled (włą-
czona) obok GD support (obsługa biblioteki GD), skontaktuj się z obsługą techniczną swojego
konta. Pakiet XAMPP, który zainstalujemy w Dodatku A, posiada już zainstalowaną i działającą
bibliotekę GD.
Kto jest kto?
Zaloguj się na swojej stronie jako superużytkownik i uaktywnij moduł Members List (lista
członków), który domyślnie nie jest aktywny3. Po aktywacji pojawi się dodatkowa opcja w bloku
Modules o nazwie Members List, która umożliwia każdemu dostęp do tego modułu i wyświetla
listę zarejestrowanych użytkowników widoczną na rysunku 5.14.
3
Aby to zrobić, należy w Menu administracyjnym kliknąć ikonę Moduły, następnie przewinąć w dół
i przy nazwie Memebers_List kliknąć środkową ikonkę w kolumnie Funkcje. Można tam również ustawić,
kto będzie widział opcję Members List (pierwsza ikonka w tej samej kolumnie)  przyp. tłum.
103
PHP-Nuke. Tworzenie witryn WWW
Rysunek 5.14. Lista użytkowników (Members List)
Kliknięcie nazwy użytkownika powoduje wyświetlenie profilu tego użytkownika, który jest
przedstawiony na rysunku 5.15.
Rysunek 5.15. Profil użytkownika testuser
To jest tylko widok profilu użytkownika  nie można go edytować. Być może zauważyłeś
słowo Forum na rysunku 5.15. Widoczny profil użytkownika jest w istocie profilem użytkow-
nika z modułu Forums (fora); zauważ, że moduł Forums także wymaga aktywacji, żeby ten
ekran był widoczny. Zwróć uwagę również na to, że nazwa strony jest nieprawidłowa: napisane
jest MySite.com, a przecież nadaliśmy jej inną nazwę. Dzieje się tak, ponieważ moduł Forums
ma swoje własne ustawienia konfiguracyjne. Zobaczysz, jak się je konfiguruje, w rozdziale 8.
Warto zauważyć także, że moduł Members List pobiera informacje z ustawień konfiguracyjnych
modułu Forums.
104
Rozdział 5. " Zarządzanie użytkownikami
Moduł Forums jest osobną, zintegrowaną z PHP-Nuke aplikacją, która nazywa się phpBB.
Jest to jedna z najlepszych, darmowych aplikacji o otwartym kodzie zródłowym. Jednym z aspek-
tów tej integracji jest współdzielone konto użytkownika  konto użytkownika utworzone na
stronie PHP-Nuke działa także jako konto użytkownika na forach. Z punktu widzenia użyt-
kownika, możliwe jest zarządzanie swoim kontem w PHP-Nuke z dwóch miejsc  z modułu
Your Account i z modułu Forums.
Pomimo że są dwa sposoby wyświetlenia danych i dwa miejsca, skąd dane te można edytować,
to wciąż każdy użytkownik ma tylko jedno konto. Obecnie moduł Your Account zapewnia
więcej informacji o użytkowniku niż moduł Forums, który przykładowo nie zawiera informacji
o subskrypcji biuletynu.
Integracja pomiędzy kontem użytkownika w PHP-Nuke i kontem użytkownika z modułu
Forums rosła wraz z kolejnymi wersjami PHP-Nuke i istnieje możliwość, że te dwa moduły
połączą się w przyszłości.
Gdy tylko konto użytkownika zostanie utworzone i użytkownik zaloguje się, nowy, wielki
świat stanie przed nim otworem.
Moduł Your Account
Moduł Your Account to przestrzeń użytkownika. Jest on prowadzony w tej przestrzeni przez
graficzny pasek nawigacyjny widoczny na rysunku 5.16.
Rysunek 5.16. Graficzny pasek nawigacyjny widoczny po zalogowaniu się użytkownika
Zanim przyjrzymy się po kolei każdemu z tych łączy, wymieńmy, co jeszcze jest widoczne na
stronie głównej modułu Your Account. Pokazuje to rysunek 5.17.
% Moje nagłówki  użytkownik może wyświetlić listę nagłówków z kanału informacyjnego
RSS innej strony. Może on także wybrać z listy rozwijanej jedną ze stron, które
widzieliśmy już w poprzednim rozdziale, lub wprowadzić adres URL strony ręcznie.
% Wyślij wiadomość publiczną  użytkownik może wprowadzić tekst wiadomości
publicznej, który będzie wyświetlony wszystkim będącym na stronie w danej chwili.
Za chwilę przyjrzymy się temu bliżej.
105
PHP-Nuke. Tworzenie witryn WWW
Rysunek 5.17. Dalsza część modułu Your Account
Te dwa elementy nie zawsze są wyświetlane. Ich widoczność kontroluje opcja w menu Konfi-
guracja strony, którą zaraz omówimy. Jednak użytkownik zawsze może zobaczyć na stronie
modułu Your Account swoje Ostatnie 10 komentarzy i Ostatnie 10 newsów.
Powracając do tematu łączy w pasku nawigacyjnym modułu Your Account, wiemy już, co robi
łącze Wylogowanie/Wyjście  wylogowuje użytkownika.
Aącze Wybierz motyw zaprowadzi użytkownika do strony, na której może on wybrać motyw
z listy motywów zainstalowanych na stronie.
Aączu Ustawienia komentarzy przyjrzymy się dokładnie w następnym rozdziale, na razie po-
wiemy, że umożliwia wyświetlanie i publikowanie komentarzy artykułów.
Zwróć uwagę, że kiedy jesteś zalogowany jako superużytkownik, moduł Your Account wyświetla
dodatkowy panel o nazwie Administration Functions. Ten panel pozwala na modyfikacje usta-
wień dla konkretnego użytkownika. Omówimy te ustawienia w naturalnym kontekście w na-
stępnym rozdziale.
Edycja profilu użytkownika
Aącze Zmień swoje info prowadzi użytkownika do jego profilu. Kilka z tych opcji już widzieli-
śmy w momencie tworzenia użytkownika ręcznie. Dotyczą one między innymi danych osobi-
stych (nazwa, e-mail itd.), subskrypcji biuletynu, opcji dotyczących wiadomości prywatnych
i konfiguracji forum. Pewna liczba tych opcji w profilu użytkownika odpowiada opcjom profilu
z forum i nie wpływają one znacząco na użytkownika poza modułem Forums.
106
Rozdział 5. " Zarządzanie użytkownikami
Po wprowadzeniu jakichkolwiek zmian w profilu użytkownika trzeba kliknąć przycisk Zapisz
zmiany, aby zmiany były zapisane. Zauważmy, że przycisk Zapisz zmiany nie jest na samym
dole strony z profilem  znajduje się on ponad panelem Avatar Control Panel (panel kontrolny
awatara), jak na rysunku 5.18.
Rysunek 5.18. Przycisk Zapisz zmiany znajduje się nad panelem Avatar Control Panel
Przycisk na samym dole formularza nosi nazwę Submit (wyślij) i jest aktywny tylko wtedy, gdy
włączone są opcje w panelu Avatar Control Panel.
Panel Avatar Control Panel w dolnej części profilu użytkownika zawiera interesującą opcję.
Awatar to mały obrazek przedstawiający Ciebie w internetowym świecie. Możesz wybrać ob-
razek z już istniejącego zbioru, klikając przycisk Show Gallery (pokaż galerię), który znajduje się
obok opcji Select Avatar from gallery (wybierz awatara z galerii), jak pokazuje rysunek 5.19.
Rysunek 5.19. Przycisk Show Gallery znajduje się obok opcji Select Avatar from gallery
Kliknięcie tego przycisku wywołuje stronę z wieloma małymi obrazkami do wybrania. Po prostu
kliknij wybrany obrazek, a zostanie on przypisany do profilu użytkownika. Efekt jest widoczny
na rysunku 5.20.
Rysunek 5.20. Potwierdzenie wyboru awatara
Kliknięcie łącza Back to Profile zaprowadzi Cię do strony Zmień swoje info.
Zbiór obrazków, który przed chwilą było widać, znajduje się w podkatalogu PHP-Nuke
modules\Forums\images\avatars\gallery\. Jeśli chcesz, możesz dodać tam więcej obrazków,
upewnij się tylko, że są one plikami GIF i ich rozmiar nie przekracza 80 pikseli wysokości
i 80 pikseli szerokości.
107
PHP-Nuke. Tworzenie witryn WWW
Konfiguracja modułu Your Account
Aącze Zmień stronę główną zapewnia dostęp do dalszych opcji konfiguracyjnych modułu Your
Account. Są one widoczne na rysunku 5.21.
Rysunek 5.21. Dalsze opcje konfiguracyjne modułu Your Account
Z tego panelu możesz zarządzać liczbą newsów wyświetlanych na stronie głównej. Pamiętaj,
że to ustawienie dotyczy tylko Ciebie  i tylko wtedy, kiedy jesteś zalogowany.
Rozmawianie ze światem za pomocą wiadomości publicznych
Za pomocą łącza Zmień stronę główną możesz także aktywować i dezaktywować wiadomości
publiczne. Wiadomości publiczne są wyświetlane każdej osobie będącej na stronie. Pojawiają
się w górnej części strony głównej i pozostają tam przez 10 minut lub do czasu pojawienia się
następnej wiadomości publicznej. Przykładową wiadomość publiczną widać na rysunku 5.22.
Rysunek 5.22. Przykładowa wiadomość publiczna
Wiadomości publiczne wysyła się ze strony głównej modułu Your Account, przedstawionego
na rysunku 5.23.
Rysunek 5.23. Wysyłanie wiadomości publicznej ze strony głównej modułu Your Account
108
Rozdział 5. " Zarządzanie użytkownikami
Zwyczajnie wprowadz tekst wiadomości i kliknij przycisk Wyślij. Twoja wiadomość zostanie
wysłana wszystkim bez wyjątku.
Wyobrazmy sobie wiadomość, która jest wyświetlana na stronie głównej każdemu odwiedza-
jącemu  to może być lekka przesada. Na szczęście użytkownicy nie mogą  spamować poprzez
ciągłe wysyłanie wiadomości publicznych  jak tylko wyślą jedną wiadomość, następna będzie
wysłana dopiero wtedy, gdy poprzednia straci ważność.
Każdy użytkownik może także wyłączyć publiczne wiadomości przez ustawienie Nie przy
opcji Aktywować rozsyłanie wiadomości publicznych?, która wyświetlana jest po kliknięciu
łącza Zmień stronę główną. To wyłączy wyświetlanie wiadomości publicznych komukolwiek.
Jednakże każdy użytkownik może je z powrotem włączyć przez ponowne ustawienie opcji na Tak.
Jakkolwiek by nie było, administrator decyduje ostatecznie o tym z menu Konfiguracja strony.
Opcja Aktywować rozsyłanie wiadomości? na panelu Opcje użytkownika pozwala na włączenie
bądz wyłączenie wiadomości publicznych dla wszystkich. Oczywiście, tylko administrator może
je włączyć z powrotem. Rysunek 5.24 przedstawia ten panel w menu Konfiguracja strony.
Rysunek 5.24. Opcje użytkownika w menu Konfiguracja strony
To ustawienie, w przeciwieństwie do tego na stronie Zmień stronę główną, uniemożliwi nie
tylko wysyłanie wiadomości publicznych, ale nawet ich wprowadzanie. Opcja Aktywować roz-
syłanie wiadomości publicznych? na stronie Zmień stronę główną także będzie niedostępna
dla użytkowników, ponieważ już same wiadomości publiczne zostały zakazane.
Na panelu Opcje użytkownika (w menu Konfiguracja strony) opcja Aktywować czytanie
nagłówków? kontroluje wyświetlaniem panelu Moje nagłówki na głównej stronie modułu Your
Account. Ustawienie tej opcji na Nie oznacza, że żaden użytkownik nie może widzieć ani wy-
bierać stron, z których można czytać nagłówki. Opcja Pozwolić użytkownikom na zmianę ilości
newsów na stronie głównej? jest prosta; jeśli jest ustawiona na Nie, ustalona liczba artykułów
będzie wyświetlana wszystkim użytkownikom.
To mój blok i będę płakać, kiedy zechcę&
Ostatnia opcja w panelu Zmień stronę główną, Aktywuj osobiste menu pozwala użytkownikowi
na wprowadzenie kodu HTML, który będzie wyświetlany w prostokątnym bloku na stronie
głównej. Ten blok może być użyty jako łatwy dostęp do przydatnych łączy. Wystarczy zaznaczyć
pole wyboru i wpisać tekst. My wprowadziliśmy kod wyświetlający łącza do dwóch artykułów.
Jest on przedstawiony na rysunku 5.25.
109
PHP-Nuke. Tworzenie witryn WWW
Rysunek 5.25. Kod zródłowy bloku, który pojawi się na stronie głównej zalogowanego użytkownika
Kiedy klikniesz przycisk Zapisz zmiany i powrócisz na stronę główną, zobaczysz swój blok 
łącza do dwóch artykułów  jak na rysunku 5.26. Domyślne położenie tego bloku to prawy
górny róg strony.
Rysunek 5.26. Blok z łączami zdefiniowanymi przez użytkownika do dwóch artykułów
Pamiętaj, że ten blok widzisz tylko Ty  zalogowany użytkownik. Tym sposobem każdy użyt-
kownik może mieć swoje osobiste menu.
Wiadomości prywatne
Użytkownicy mogą wysyłać do siebie wiadomości przez kanał Prywatne wiadomości. Jest to
pewien rodzaj systemu pocztowego dla stron internetowych, z tą różnicą, że możesz wysyłać
wiadomości tylko do jednego odbiorcy na raz. Ponadto nie możesz wysyłać załączników.
Gdy przyglądaliśmy się modułowi Zmień swoje info, widzieliśmy parę opcji dotyczących po-
wiadamiania użytkowników o wiadomościach prywatnych przychodzących do nich, tj. Notify
on new Private Message by Email (powiadom e-mailem o nowej wiadomości prywatnej) i Pop
up window on new Private Message (pokaż osobne okienko przy przyjściu nowej wiadomości
prywatnej). Jeżeli administrator uaktywnił moduł Private_Messages (wiadomości prywatne),
strona główna modułu Your Account wyświetla liczbę wiadomości prywatnych, które zostały
wysłane do użytkownika, a także pole tekstowe do ich wysyłania (rysunek 5.27).
110
Rozdział 5. " Zarządzanie użytkownikami
Rysunek 5.27. Panel Twoje prywatne wiadomości z informacją o liczbie nowych wiadomości prywatnych
Może być mylące, że nie ma żadnego przycisku Wyślij lub Wyślij wiadomość. W celu wysłania
wiadomości prywatnej wprowadz pseudonim wybranego użytkownika w pole Wyślij prywatną
wiadomość do i naciśnij Enter. Jeśli w tym polu był jakiś tekst, PHP-Nuke zinterpretuje go
jako pseudonim użytkownika i przeniesie Cię do strony, na której będzie można wpisać treść
wiadomości.
Jeżeli będziesz miał wiadomości prywatne, ich numer pojawi się jako łącze w zdaniu Masz&
prywatną wiadomość(ci). Kliknięcie tego łącza zaprowadzi Cię do skrzynki odbiorczej wiado-
mości prywatnych, pokazanej na rysunku 5.28.
Rysunek 5.28. Skrzynka odbiorcza wiadomości prywatnych
Stąd możesz zarządzać wiadomościami prywatnymi tak, jak robisz to z listami elektronicznymi
w dowolnym programie pocztowym. Krótkiego omówienia wymagają jedynie skrzynki Outbox
i Sentbox. Wiadomości, które wysłałeś, najpierw pojawią się w skrzynce Outbox. Jednakże
gdy tylko odbiorca przeczyta wiadomość, jest ona przenoszona do skrzynki Sentbox. Tym samym
od razu wiesz, że Twoja wiadomość została przeczytana.
Jeśli pomysł wiadomości prywatnych przeszkadza Ci jako administratorowi  przecież nie
ma opcji, żeby użytkownik nie odebrał wiadomości prywatnej  wtedy jedyna możliwość to
wyłączenie ich dla wszystkich użytkowników. Wystarczy dezaktywować moduł Private_Messages
z panelu Menu administracyjne.
Zauważmy, że moduł Private_Messages różni się znacznie pod względem liczby funkcji od
Wiadomości, z którymi zetknęliśmy się w rozdziale 3.  proszę ich nie mylić. Funkcje modułu
Private_Messages są także związane z modułem Forums. Dlatego rysunek 5.28 wyświetla złą
nazwę strony (wyjaśnialiśmy już ten problem wcześniej dla modułu Members Lists).
111
PHP-Nuke. Tworzenie witryn WWW
Dzienniki użytkowników
W PHP-Nuke każdy zarejestrowany użytkownik może prowadzić swój dziennik. Umożliwia
to moduł Journal (dziennik), do którego mamy dostęp również z modułu Your Account 
dlatego go tutaj omawiamy. Nieco mylące jest to, że kliknięcie łącza Journal w menu Modules
zaprowadza do strony Dzienniki użytkowników, ale z tym samym paskiem nawigacyjnym jak
w module Your Account. Dlatego masz wrażenie, że jesteś na stronie modułu Your Account.
Zauważ, że kiedy Journal jest dezaktywowany, nie będzie on wyświetlany na pasku nawiga-
cyjnym modułu Your Account.
W swoim dzienniku użytkownik może wpisywać myśli i opinie, natomiast inni użytkownicy
mogą czytać te wpisy i dodawać komentarze. Dziennik użytkownika przypomina mały blog
dostępny dla każdego użytkownika.
Kliknięcie łącza Dziennik w module Your Account powoduje wyświetlenie głównego panelu
kontrolnego dziennika (rysunek 5.29).
Rysunek 5.29. Główny panel kontrolny dziennika
Stąd możesz wyświetlić listę dzienników innych użytkowników (Katalog dziennika) lub wpisy
własnego dziennika (Twój dziennik).
Twoje wpisy w dzienniku
Zacznijmy od Twojego dziennika. Kliknięcie łącza Twój dziennik spowoduje wyświetlenie trzech
łączy widocznych na rysunku 5.30.
Rysunek 5.30. Dostępne łącza po kliknięciu łącza Twój dziennik
Po dodaniu kilku wpisów dostępna jest ich lista. Wyświetlana jest ona pod panelem pokaza-
nym na rysunku 5.30.
Dodawanie wpisu do dziennika
Kliknięcie łącza Dodaj nowy wpis zaprowadzi Cię do prostego panelu służącego do wprowa-
dzania wpisów do dziennika widocznego na rysunku 5.31.
112
Rozdział 5. " Zarządzanie użytkownikami
Rysunek 5.31. Panel umożliwiający dodawanie nowego wpisu
Trzeba nadać wpisowi Tytuł. Główną treść wpisuje się w Nagłówek (jak zwykle kod HTML jest
niedozwolony). Można ustawić również element graficzny (Grafika). Ten element jest wstawiany
na początek Twojego wpisu w dzienniku i ma on, w pewien sposób, oddawać nastrój tego wpisu.
O tym, czy wpis ma być dostępny publicznie, czy nie, decydujesz za pomocą pola rozwijanego
Publiczny. Jeśli ustawisz pole Publiczny na Nie, inni będą w dalszym ciągu mogli widzieć tytuł
wpisu, ale nie będą mieli dostępu do jego treści.
Kliknięcie przycisku Dodaj nowy wpis zapisuje dany wpis w dzienniku.
Wyświetlanie wpisów w dzienniku
Możesz wyświetlić listę wpisów w dzienniku ze strony Twój dziennik  wyświetlonych zo-
stanie 20 najnowszych wpisów (rysunek 5.32). Aącze Wyświetl wszystkie własne wpisy pokaże
wszystkie Twoje wpisy, posortowane według dat.
Rysunek 5.32. Lista wpisów w dzienniku
113
PHP-Nuke. Tworzenie witryn WWW
Wydruk pokazuje datę i czas każdego wpisu, jego tytuł i ikony do edycji lub usunięcia wpisu.
Oczywiście, tylko jego właściciel może go modyfikować lub usuwać. Kolumna na rysunku 5.32
o nazwie Publiczny określa, czy treść wpisu może być wyświetlana przez gości odwiedzających
stronę. Kliknięcie tytułu wpisu wyświetla jego zawartość i komentarze (jeśli jakieś są). Efekt
przedstawiony jest na rysunku 5.33.
Rysunek 5.33. Zawartość wpisu do dziennika
Z tego miejsca możesz edytować lub usunąć dany wpis, lub też napisać komentarz. Aącze
Zobacz więcej nie robi nic specjalnego  wyświetla z powrotem listę wpisów w dzienniku
danego użytkownika (czyli w tym przypadku  Twoich), a nie, jak można by się spodziewać,
więcej informacji o tym wpisie (po prostu nie ma nic więcej). Aącze Profil użytkownika także
nie umożliwia zbyt wiele  skoro chcesz wyświetlić informacje o sobie, to zaprowadza Cię
z powrotem do strony głównej modułu Your Account. Kiedy przeglądasz wpisy w dziennikach
innych osób, wtedy łącze to zaprowadzi Cię do strony z informacjami o danym użytkowniku
i jego najnowszych artykułach. Natomiast łącze Wyślij wiadomość służy do wysyłania prywatnych
wiadomości do danego użytkownika.
Jako właściciel wpisów w dzienniku, możesz również usunąć dowolne komentarze do Twojego
wpisu, nawet jeśli nie jesteś ich autorem. Jest to jeden ze sposobów trzymania odmiennych
poglądów od Twoich pod kontrolą!
Rzut oka na dzienniki innych użytkowników
Kliknięcie łącza Katalog dziennika z głównej strony modułu Journal wyświetla listę dzienników
innych użytkowników. Wyświetlona zostanie lista dwudziestu użytkowników, którzy dodali
ostatnio wpisy w swoich dziennikach (rysunek 5.33). Możesz również kliknąć łącze Wyświetl
wszystkie dzienniki, aby zobaczyć każdego użytkownika, który prowadzi dziennik. Mimo
że na tym etapie nie ma problemu, to gdy odwiedzisz inną stronę zbudowaną w oparciu
o PHP-Nuke, zawierającą wielu użytkowników i wyświetlisz wszystkie dzienniki, możesz ujrzeć
dosyć długą listę.
114
Rozdział 5. " Zarządzanie użytkownikami
Rysunek 5.33. Moduł Journal  lista ostatnich 20 aktywnych wpisów
Aącze o nazwie Szukaj użytkownika pozwala na wyszukanie określonej frazy występującej
w innych dziennikach. Możesz wyszukiwać wśród nazw użytkowników, tytułów wpisów, treści
lub komentarzy do wpisów. Zwracana jest lista dzienników, które spełniają podane kryteria.
Podczas przeglądania listy użytkowników prowadzących dziennik kliknięcie nazwy użytkownika
lub ikony w kolumnie Zobacz dziennik wyświetla listę wpisów danego użytkownika. Natomiast
kliknięcie ikony w kolumnie Profil użytkownika wyświetli informację na temat danego użyt-
kownika. Informacja ta pochodzi z modułu Your Account i zawiera takie dane, jak spis jego
najnowszych artykułów i komentarzy, a także status, czy dany użytkownik jest aktualnie do-
stępny w sieci.
Jak wcześniej wspomniano, zalogowani użytkownicy mogą dodawać komentarze do każdego
wpisu publicznego w dzienniku. Formularz służący do wpisywania komentarzy jest prosty 
składa się z jednej ramki (Pole komentarza) i przycisku Wyślij komentarz. Komentarze do wpisu
są wyświetlane w linii, jeden pod drugim, i nie są tak bogate w opcje jak te do komentowa-
nia artykułów, o czym przekonasz się w następnym rozdziale. Ponieważ musisz być zalogo-
wany, żeby dodawać komentarze do wpisów dziennika, to nie ma możliwości anonimowego
komentowania  za każdym razem będzie widoczna nazwa użytkownika razem z jego ko-
mentarzem.
Nagradzanie użytkownika
Użytkownicy, którzy są aktywni na stronie, mogą otrzymywać za to punkty. Kiedy użytkownik
zbierze odpowiednią liczbę punktów, staje się członkiem określonej grupy użytkowników.
Możesz ograniczyć dostęp do danych modułów tylko dla zarejestrowanych użytkowników; ale
można pójść dalej i pozwolić na dostęp do danego modułu tylko członkom określonej grupy
użytkowników. W ten sposób możesz nagrodzić użytkowników, którzy często uczestniczą
w życiu Twojej społeczności, za pomocą dodatkowych modułów czy treści, które tylko oni będą
mogli zobaczyć.
115
PHP-Nuke. Tworzenie witryn WWW
Pomimo że grupy użytkowników i użytkownicy subskrybowani wydają się podobni w tym
sensie, że możesz udostępnić moduły tylko dla nich, jest pomiędzy nimi szereg różnic:
% Każdy może zostać członkiem określonej grupy użytkowników przez uczestniczenie
w działaniach nagradzanych punktami. Użytkownicy mogą być subskrybowani
tylko przez superużytkownika.
% Z drugiej strony, bez ingerencji w bazę danych PHP-Nuke superużytkownik
nie może przydzielić danego użytkownika do grupy użytkowników. To jest coś,
na co użytkownik musi zasłużyć.
Obecnie w PHP-Nuke możemy zabronić dostępu tylko do całego modułu; nie ma możli-
wości zabronienia dostępu danej grupie użytkowników do określonych treści w określo-
nym module.
Punkty na sprzedaż
Domyślnie za poniższe działania przyznawane są punkty:
% Oglądanie  oglądanie dowolnej strony.
% Wiadomości  opublikowanie artykułu (dokładniej: wysłanie artykułu,
który potem rzeczywiście pojawi się na stronie, a nie samo wysłanie artykułu!),
dodawanie komentarza do artykułu, ocenianie go czy wysyłanie artykułu
do znajomych.
% Ankiety  głosowanie w ankietach lub wysyłanie ich do znajomych.
% Ściąganie plików  ściąganie plików, ocenianie plików do ściągnięcia oraz
komentowanie ich. Punkty przyznawane są także za podobne działania w module
Web Links (łącza WWW).
% Fora  publikowanie artykułów lub odpowiadanie na istniejący artykuł.
% Recenzje  publikowanie recenzji w sekcji Reviews (recenzje).
% Dziennik  dodawanie wpisu do dziennika lub komentowanie wpisów innych
użytkowników.
Punkty przyznawane są także za klikanie banerów reklamowych, rozsyłanie wiadomości pu-
blicznych oraz polecanie stron znajomym.
Liczba punktów przyznawanych za każde działanie może być ustawiona z panelu Users Group
Administration (administrowanie grupami użytkowników). Możesz przydzielić różną liczbę
punktów dla każdej czynności, włączając w to, jeśli chcesz być podstępny, ujemną liczbę
punktów! Domyślnie za wszystkie działania przydzielane jest 0 punktów.
Panel Users Group Administration wywołuje się, klikając ikonę Users Groups z menu Menu
Administracyjne, pokazaną na rysunku 5.34.
116
Rozdział 5. " Zarządzanie użytkownikami
Rysunek 5.34. Ikona Users Groups z menu Menu Administracyjne
Stąd możesz zobaczyć aktualnie utworzone grupy użytkowników, stworzyć nową grupę oraz
edytować liczbę punktów przyznawanych za każde działanie.
Czas na działanie  przyznawanie punktów za oglądanie stron
Stworzymy nową grupę użytkowników o nazwie OglądającyStrony, żeby nagrodzić ludzi, którzy
będą wyświetlać strony w naszym serwisie. Przyznamy jeden punkt za każdą wyświetloną stronę,
a członkostwo w grupie będzie wymagało co najmniej 20 punktów.
1. Upewnij się, że jesteś zalogowany jako superużytkownik. Jeśli nie masz otwartej
strony z panelem Users Group Administration, kliknij ikonę Users Groups w menu
Menu Administracyjne.
2. W panelu Add New Users Group (dodaj nową grupę użytkowników) wprowadz
informacje dotyczące Twojej grupy. Ten panel przedstawia rysunek 5.35.
Rysunek 5.35. Panel Add New Users Group (dodaj nową grupę użytkowników)
3. Kliknij przycisk Create This Group (utwórz tę grupę).
4. Kiedy strona ponownie załaduje się, zobaczysz swoją nowo utworzoną grupę
OglądającyStrony na liście grup użytkowników, pokazaną na rysunku 5.36.
Aącza Edytuj i Skasuj umożliwiają odpowiednio modyfikację ustawień dla danej
grupy i jej usunięcie.
117
PHP-Nuke. Tworzenie witryn WWW
Rysunek 5.36. Lista grup użytkowników
5. Przewiń w dół do panelu Points System (system punktów) i dalej, aż zobaczysz
napis Page View (wyświetlanie stron) w pierwszej kolumnie tabeli. Wprowadz
cyfrę 1 w trzecią kolumnę, tak jak pokazano na rysunku 5.38.
Rysunek 5.38. Ustalamy jeden punkt za wyświetlenie jednej strony
6. Kliknij przycisk Update (uaktualnij) znajdujący się na końcu tego samego wiersza.
Jeśli klikniesz przycisk Update w innym wierszu, zmiany nie zostaną zapisane!
7. Teraz wyświetl parę stron  po prostu klikaj łącza w bloku Modules, a następnie
kliknij łącze Your Account. Liczba punktów, które zebrałeś, przeglądając strony,
będzie widoczna na środku strony, jak przestawiono na rysunku 5.39.
Rysunek 5.39. Liczba punktów zebrana przy przeglądaniu stron serwisu
Co się stało?
Właśnie utworzyliśmy grupę użytkowników. Nazwaliśmy ją OglądającyStrony i ustawiliśmy
wartość dwudziestu punktów, które trzeba zebrać, by stać się jej członkiem.
Jedyna czynność, która powoduje zwiększanie liczby punktów, to wyświetlanie stron (Page View).
Za każdym razem kiedy użytkownik wyświetla stronę w PHP-Nuke, dostaje jeden punkt, po-
nieważ przydzieliliśmy jeden punkt za każde wyświetlenie strony. Liczba punktów, którą
użytkownik uzyskał, jest widoczna na stronie modułu Your Account, ale grupy, do których dany
użytkownik należy, nie są tam wyświetlane.
Ograniczanie dostępu do modułów tylko dla grup użytkowników
Po utworzeniu przynajmniej jednej grupy użytkowników w menu Administracja modułów
pojawi się opcja ograniczania dostępu do modułów. Aby ograniczyć dostęp do modułu tylko
dla określonej grupy użytkowników (i co najwyżej jednej), moduł ten musi być najpierw nie-
dostępny dla wszystkich użytkowników, oprócz zarejestrowanych.
118
Rozdział 5. " Zarządzanie użytkownikami
Czas na działanie  ograniczenie dostępu do modułu Statistics (statystyki)
tylko dla użytkowników, którzy często wyświetlają strony
1. Kliknij ikonę Modules w menu Administracja modułów.
2. Odszukaj moduł Statistics na liście modułów i kliknij ikonę Edytuj z kolumny
Funkcje.
3. Z listy rozwijanej o nazwie Kto może to zobaczyć? wybierz Tylko zarejestrowani
użytkownicy.
4. Z listy rozwijanej Users Group wybierz OglądającyStrony. Sytuację przedstawia
rysunek 5.40.
Rysunek 5.40. Ograniczenie dostępu do modułu Statistics
5. Kliknij przycisk Zapisz zmiany.
6. Kiedy strona ponownie załaduje się, upewnij się, że moduł Statistics jest aktywny
 jeśli zajdzie potrzeba, kliknij łącze Aktywuj w kolumnie Funkcje.
Co się stało?
Ograniczyliśmy dostęp do modułu Statistics tylko dla członków grupy OglądającyStrony.
Konieczne było wybranie opcji, mówiącej, że Tylko zarejestrowani użytkownicy mogą mieć
dostęp do tego modułu  w końcu członkowie grupy OglądającyStrony są podzbiorem
wszystkich zarejestrowanych użytkowników. Na koniec upewniliśmy się, że moduł Statistics
jest aktywny.
Istnieje jednak możliwość, że będziesz mieć dostęp do modułu Statistics, mimo że nie masz
wystarczającej liczby punktów (ten moduł powinien być dostępny tylko dla użytkowników
mających co najmniej 20 punktów). Ten problem występuje z powodu błędu w pliku modules.php.
Poprawmy ten błąd w poniższy sposób:
119
PHP-Nuke. Tworzenie witryn WWW
1. Otwórz plik modules.php w edytorze tekstu (może być WordPad).
2. Odszukaj poniższą linijkę
} elseif ($view == 1 AND (is_user($user) OR is_group($user, $name)) OR
is_admin($admin)) {
I zamień na następującą:
} elseif ($view == 1 AND (is_user($user) AND is_group($user, $name)) OR
is_admin($admin)) {
Zauważ, że zamieniliśmy tylko pierwszy OR (lub) na AND (i).
3. Zapisz plik.
Teraz już nie będziesz miał dostępu do modułu Statistics. Będziesz musiał najpierw odwiedzić
inne strony, żeby zebrać odpowiednią liczbę punktów (przynajmniej 20), i tylko wtedy będziesz
miał dostęp do tego modułu.
Zarządzanie innymi administratorami
Konto superużytkownika, z którym pracowałeś dotychczas, daje całkowitą władzę nad całą
stroną. W miarę powiększania się Twojej strony możesz zatrudnić innych ludzi do pomocy
przy administrowaniu stroną, na przykład do analizowania treści wiadomości, nadzorowania
pobierania plików. Jednocześnie nie jest wskazane, żeby mieli oni pełną władzę superużyt-
kownika.
PHP-Nuke zapewnia drugi typ konta administratora, z przywilejami dla konkretnych modułów.
Te konta to rozwiązanie powyższego problemu. W PHP-Nuke drugie konta administratora są
nazywane kontami autora. Użytkownicy tych kont, jak superużytkownik, logują się na stronie
admin.php. Konta autora to nie są zwykłe konta użytkowników, które zostały  awansowane
 są  prawdziwymi kontami administratora.
Autorzy kontra superużytkownik
Specjalni administratorzy (autorzy) mogą być utworzeni do zarządzania dowolnym z domyśl-
nych modułów (Content  treść, Downloads  pobieranie plików, Encyclopedia  encyklo-
pedia, FAQ  najczęściej zadawane pytania, News  wiadomości, Reviews  recenzje, Surveys
 ankiety, Topics  tematy, Web Links  łącza WWW i Your Account  Twoje konto).
Te uprawnienia można rozszerzać na więcej niż jeden moduł. W istocie, każdy moduł (domyślny
lub niezależnej firmy), który pojawia się w menu Administracja modułów, może mieć usta-
wione, kto sprawuje nad nim opiekę. Czy uprawnienia te są wykorzystywane, czy nie, to
już inna sprawa.
120
Rozdział 5. " Zarządzanie użytkownikami
Różnica pomiędzy kontem autora (administratora) i kontem superużytkownika jest taka, że
autorzy mają dostęp tylko do administracji modułów. Nie mają oni dostępu do podstawowego
zespołu funkcji  systemowych , które poznaliśmy w rozdziale 4. Dla przykładu, nie można
utworzyć konta autora, które miałoby uprawnienia do modułu News i jednocześnie upraw-
nienia do konfiguracji modułu Bloki. Jedyny sposób, aby to zrobić, to nadanie temu kontu
takich uprawnień, jakie posiada konto superużytkownika  możliwe jest przydzielenie upraw-
nień konta superużytkownika do konta autora.
Zauważyliśmy, że menu administracyjne jest podzielone na dwa zbiory ikon  Menu admini-
stracyjne oraz menu Administracja modułów. Konto autora będzie miało wyświetlone tylko
menu Administracja modułów w menu administracyjnym. Zobaczymy, jak to wygląda za
chwilę, gdy już utworzymy przykładowe konto autora.
Wskutek tego, bez podstawowych funkcji systemowych, konto autora nie może utworzyć innego
konta autora  jedynie superużytkownik może to uczynić.
Tworzenie konta autora
Aby utworzyć nowego autora, kliknij ikonę Edytuj administratorów w Menu administracyjne,
pokazaną na rysunku 5.41.
Rysunek 5.41. Ikona Edytuj administratorów w Menu administracyjnym
Wyświetli się strona Zarządzanie autorami, która zawiera panel do edycji szczegółów istniejącego
konta administratora, łącznie z kontem superużytkownika. Istnieje także możliwość usunięcia
wcześniej utworzonego konta administratora. Panel jest pokazany na rysunku 5.42.
Rysunek 5.42. Możliwość edytowania szczegółów istniejących administratorów
Konto superużytkownika zostało nazwane kontem GOD (boga).
Poniżej tego panelu znajduje się formularz Dodaj nowego administratora, przedstawiony na
rysunku 5.43.
121
PHP-Nuke. Tworzenie witryn WWW
Rysunek 5.43. Formularz Dodaj nowego administratora
Musisz wpisać Nazwę konta  jest to coś innego niż pseudonim, którego używa się do zalo-
gowania administratora. Wymagany jest także adres e-mail dla tego administratora i hasło.
Pole Uprawnienia zawiera listę modułów z polem wyboru obok każdego modułu. Zaznaczając
te pola, obdarzasz danego administratora uprawnieniami do danego modułu. Zaznaczenie pola
wyboru Super User powoduje, że konto będzie miało takie same uprawnienia jak konto super-
użytkownika. Jednakże to konto, w przeciwieństwie do oryginalnego,  boskiego konta super-
użytkownika, utworzonego przy powstawaniu strony, może zostać usunięte.
Kiedy ustawisz uprawnienia i wprowadzisz pozostałe dane, kliknij przycisk Dodaj autora, aby
utworzyć konto administratora. Na to konto można teraz zalogować się ze strony logowania
dla administratorów (admin.php). Zwróć uwagę, że nie ma, w przeciwieństwie do sytuacji
z kontem  boskim , dodatkowej opcji utworzenia  normalnego konta użytkownika.
Jeśli użyjesz tego formularza do zmiany hasła swojego konta superużytkownika, to zostaniesz wylogowany
i będziesz musiał zalogować się ponownie, podając nowe hasło.
Po utworzeniu w ten sposób konta administratora i po zalogowaniu się zobaczymy ograniczoną
liczbę opcji w menu administratora. Rysunek 5.44 pokazuje konto administratora z dostępem
do modułów News, Surveys, Topics i Users4.
4
W celu uzyskania dostępu do modułu Users należy zaznaczyć pole Your Account widoczne na rysunku 5.43
 przyp. tłum.
122
Rozdział 5. " Zarządzanie użytkownikami
Rysunek 5.44. Konto administratora z dostępem do wybranych modułów
Jeśli ten administrator spróbuje obejść to menu i wpisać adres URL innego modułu bezpo-
średnio w pasek adresu przeglądarki, to PHP-Nuke i tak odmówi do niego dostępu.
Podsumowanie
W tym rozdziale dowiedziałeś się, jak dodawać użytkowników do Twojej strony i jak mogą oni
rejestrować się na stronie. Zbadaliśmy też obszar osobisty każdego użytkownika, czyli moduł
Your Account. W module tym każdy użytkownik ma możliwość prowadzenia swojego Dziennika,
który może służyć jako zapis ich opinii oraz może być wyświetlany i komentowany przez innych
użytkowników.
Opisaliśmy także sposoby zarządzania użytkownikami Twojej strony, takie jak tworzenie sub-
skrypcji dla konkretnego użytkownika. Subskrypcje są zwykle używane do ograniczania do-
stępności modułów tylko dla klientów, którzy zapłacili za dostęp do nich. Przyjrzeliśmy się
także grupom użytkowników i temu, jak PHP-Nuke przyznaje punkty użytkownikom w zależ-
ności od aktywności na stronie. Kiedy użytkownik uzbiera wystarczającą ilość punktów, staje się
członkiem grupy użytkowników i możliwe, że uzyska dostęp do niedostępnych modułów.
Na koniec poruszyliśmy zagadnienie tworzenia innych kont administratora, które nie są tak
potężne, jak konto superużytkownika. Tacy administratorzy lub autorzy (jak są oni nazywani
w PHP-Nuke) mogą mieć dostęp do określonych modułów, tym samym pozwalając Tobie,
administratorowi całej strony, przekazać zarządzanie tymi modułami w ich ręce.
123


Wyszukiwarka

Podobne podstrony:
PHP MySQL i MVC Tworzenie witryn WWW opartych na?zie?nych aplphp
PHP i MySQL Tworzenie aplikacji WWW phmsap
PHP i MySQL Tworzenie stron WWW Vademecum profesjonalisty Wydanie czwarte phmsv4
PHP i MySQL Tworzenie stron WWW VP Wyd3
PHP i MySQL Tworzenie stron WWW Wydanie drugie Vademecum profesjonalisty phms2v
PHP i MySQL Witryna WWW oparta na bazie danych Wydanie IV
PHP Tworzenie stron WWW Szybki start phpszs

więcej podobnych podstron