Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Własne forum od podstaw, jakie powinny być funkcje?
Forum PHP.pl > Forum > Kontrola i zarządzanie projektami
lolo121
Cześć, będę próbował napisać własne, w pełni funkcjonalne, bezpieczne, lekkie i szybkie forum. Jestem na etapie, gdzie sobie składam listę, jakie funkcje będą na forum. Jak na razie nie mam wielu pomysłów:

- Logowanie i rejestracja
- Profil użytkownika - informacje, ranga, zmiana hasła/emaila itp.
- Obsługa MySQL do logowania, rejestracji, pisania tematów/postów, sesje użytkowników i resztę tych spraw
- Panel administracyjny zabezpieczony w dodatkowy sposób (nie wystarczy być zalogowany na konto administratora!)
- System szablonów
- Pluginy
- System języków
- Strony błędów
- Instalator

Spróbuję najpierw zrobić najbardziej podstawową wersję forum. Dopiero później bym pomysłał o reszcie funkcji, jakie forum powinno mieć. Prosiłbym o to, żebyście napisali swoje pomysły na funkcje, jakie forum powinno mieć. No i jeszcze prosiłbym o doświadczonych w tych sprawach, na co trzeba zwrócić uwagę - porady na temat pisania forum, zabezpieczenia i resztę takich spraw. Dziękuję i liczę na jakiekolwiek odpowiedzi na ten temat
Forti
1. Na czym to chcesz pisac? Jaki framework?
2. Jakie masz doświadczenie w forum? Z doświadczenia wiem że np. system pluginów jest bardzo ciężko do ogarnięcia na jakimś działającym i bezpiecznym poziomie. Łatwo tutaj o bugi.
3. Panel administracyjny zabezpieczony w dodatkowy sposób (nie wystarczy być zalogowany na konto administratora!) - bezsens

Napisałem forum w dwóch wersjach (najpierw na start strukturalne, później na frameworku symfony) i powiem Ci, że zapomnij jakoby twoje forum miało mieć "TAKIE" funkcjonalności. To bezsens wink.gif Najpierw trzeba nabrać troche doświadczenia z tym.


To jak z budową miasta - gdy zaczynasz budowe nowego nigdy nie jesteś w stanie przewidzieć problemów czy zaplanować wszystko idealnie. Więc aż tak nie planuj wszystkiego.
PrinceOfPersia
Cytat
Cześć, będę próbował napisać własne, w pełni funkcjonalne, bezpieczne, lekkie i szybkie forum. Jestem na etapie, gdzie sobie składam listę, jakie funkcje będą na forum. Jak na razie nie mam wielu pomysłów:

jestem podobnnego zdania, co przedmowca - jeśli nigdy nie pisałeś wczesniej forum, to zapomnij, że bedzie ono "w pelni funkcjonalne, bezpieczne, lekkie i szybkie". Żeby zrobić cos dobrego, trzeba wiedzieć jak to zrobić, a to sie nabywa w wiekszosci przypadków robiąc najpierw coś kiepskiego, a pózniej uczac sie na bledach...

Cytat
Z doświadczenia wiem że np. system pluginów jest bardzo ciężko do ogarnięcia na jakimś działającym i bezpiecznym poziomie

Nie zawsze tak musi być. Wydaje mi się, że architektura oparta o pluginy może być nawet łatwiejsza do zaimplementowania niż monolit, tylko trzeba to przemyśleć, i własnie, mieć doswiadczenie w tego typu architekturze, żeby wiedzieć co sie sprawdza, a co nie (tyle, że uwaga, pisze teraz o architekturze opartej na pluginach ogolnie, jako wzorcu projektowym, a nie o pisaniu konkretnie forum)
optus8
Przydatna będzie jakaś kontrola antyspamowa, bo pełno teraz tego wszędzie.
Oczywiście przypomnienie hasła dla użytkowników oraz kontrola kont - np. banowanie itd...
Dla użytkowników jakieś avatary do profilu.
Postawowe statystyki postów, tematów itd...
Shoutbox?
Wszelkie moderacje postów z konta admina.
mensajero
Cytat(lolo121 @ 7.02.2015, 12:28:50 ) *
- Panel administracyjny zabezpieczony w dodatkowy sposób (nie wystarczy być zalogowany na konto administratora!)


Mogę wiedzieć jaki jest tego cel? Przecież forum edytuje/moderuje się dość często i konieczność każdorazowego pokonywania jakichś dodatkowych zabezpieczeń to katorga. Można by ewentualnie zabezpieczyć konto admina w ten sposób, że po wpisaniu loginu i hasła, dostaje SMSem kod do przepisania, tak jak robią to banki przy potwierdzeniu istotnych operacji na koncie.


Zawsze warto pisać skrypty, człowiek najwięcej uczy się na błędach i poprze praktykę, ale liczenie, że w pojedynkę stworzy się bezpieczne forum jest mrzonką. Są projekty przy których pracuje po kilkanaście/dziesiąt osób, a i tak zawierają luki, które można wykorzystać.
lolo121
Cytat(optus8 @ 4.03.2015, 13:39:11 ) *
Przydatna będzie jakaś kontrola antyspamowa, bo pełno teraz tego wszędzie.
Oczywiście przypomnienie hasła dla użytkowników oraz kontrola kont - np. banowanie itd...
Dla użytkowników jakieś avatary do profilu.
Postawowe statystyki postów, tematów itd...
Shoutbox?
Wszelkie moderacje postów z konta admina.


Takiej kontroli na razie nie zrobiłem. Przypomnienia hasła również. Z kontroli konta użytkownika przez konto administratora mogę na razie skasować czyjeś konto bądź je zedytować. Avatary są i tutaj się postarałem, bo można wstawić link do obrazka i będzie on wyświetlony w postach i w profilu. Jak ktoś nie ustawi avatara, to ustawi się domyślny. Myślę o dodaniu tego, by po podaniu linku skrypt pobrał taki obrazek ze strony i zapisał bezpośrednio na mój serwer. W końcu nie wiadomo, kiedy padnie taki zewnętrzny serwer

Zrobiłem listę działów, listę tematów w danym dziale i wyświetlenie tematów. Można dodać dział, zmienić jego tytuł lub opis oraz go skasować razem z tematami i postami. Tematy również można usuwać, edytować oraz na nie odpowiadać. Shoutbox'a jeszcze nie ma. Z konta administratora mogę usunąć post lub go zedytować.

Już nawet w większości zabezpieczyłem skrypt przez XSS. Prymitywnie zrobiłem blokadę dostępu dla wskazanych IP, gdzie muszę ręcznie dodać do tablicy adres. Do listy zezwolonych na wejście na forum dodałem tylko swoje IP. Jedyną rzeczą z internetu to są obrazki przy działach i w menu. Logo to tylko kolor i czcionka z GIMPa






Forti
A wiesz że to forum PHP? Nie interesuje nas screeny czy layout, który i tak jest brzydki ;] Pokaż kod!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2018 Invision Power Services, Inc.