![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 15.06.2018 Ostrzeżenie: (0%) ![]() ![]() |
Cześć.
Prosiłbym Was o opinię kodu, do którego link podrzucam niżej. Jest to proste forum - nie ma tu raczej jakiś rozbudowanych rzeczy, bo jest to mój pierwszy projekt w PHP, ale nawet pisząc takie coś, poznałem wiele nowych zagadnień (IMG:style_emoticons/default/wink.gif) Chciałbym dowiedzieć się co należy poprawić w przyszłości. Jest to projekt bez frameworków do php. Struktura - brak podfolderów leży, ale nie chciało mi się już z tym mieszać (IMG:style_emoticons/default/smile.gif) Poza tym wydaje mi się, że trochę pomieszałem rozbicie funkcji na klasy - na przykład komentarze w klasie postów. Dlatego dobrze gdybyście podpowiedzieli mi, co warto zmienić na przyszłość (IMG:style_emoticons/default/wink.gif) https://github.com/selfmadeking/simple-forum-php oraz podgląd jak to działa (trzeba założyć konto, dowolny e-mail jakiś login i hasło (szyfrowanie password_hash hehe), aby mieć dostęp do forum - swoje posty, komentarze, sygnaturę można edytować): https://imlimitless.000webhostapp.com/index.php Dodatkowe pytanie - czy Waszym zdaniem to już czas, żeby próbować pisać coś z frameworkiem w php np. Symfony? Czy jeszcze coś napisać? Macie pomysł co? (IMG:style_emoticons/default/smile.gif) Pozdrawiam i krytykujcie jak się tylko da! (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Klasa nie ma prawa mi robic zadnego echo. Leci wyjatek to leci.
Takie potworki jak ten if(isset($_SESSION['user_session'])) { return true; } else{ return false; } zapisuje sie poprostu tak return isset($_SESSION['user_session']); Nie ma sensu tworzyc 1000 lini jak mozna 10 Naucz sie oddzielac logike od wygladu, akcje do widoku. MVC sie klania. Wypadaloby juz pisac nowe rzeczy w php7 Funkcja nie moze zwracac albo tekstu albo false Jak post ma milion odpowidzi to skrypt ci padnie. Poczytaj o stronicowaniu thePosts - co to za nazwa funkcji? Za cholere nie wiem co to ma niby robic po nazwie Plik db.php a ty tam inicjalizujesz forum temat post i usera... eeee? Ten kod to generalnie sieczka do poprawy. Jedyne na plus ze jakos ustrzegles sie przed banalnymi dziurami. edit:a nie, cofam ostatnie. Plik podatny na banalny XSS edit2: https://imlimitless.000webhostapp.com/topic.php?id=100000 Topic not found. a pod spodem Posts not found for this topic. No jak nie ma tematu to i nie dziwota ze nie ma postow. Do etapu pobierania postow gdy nie ma tematu nie powinno w ogole dochodzic edit x: if($content == "" || strlen($content) == 0 || !$content) a moze poprostu if(empty($content)) ? Prawda ze krocej i bardziej czytelniej? Cytat Dodatkowe pytanie - czy Waszym zdaniem to już czas, żeby próbować pisać coś z frameworkiem w php np. Symfony? Czy jeszcze coś napisać? Macie pomysł co? Napisac? Nie. Douczyc, TAK!edit x foreach($info as $info) ouch <?php echo $info; ?> Juz od dawna <?= $info ?> jest standardem Takie kody tez nie maja zadnego sensu: if($stmt) { return true; } else { return false; } bo jak zapytanie sie nie powiedzie na jakims etapie to poleci poprosty wyjatek i do tego IFa nie dojdzie w ogole. Wiec wystarczy samo: return true; I wlacz raportowanie wszystkich bledow bo po kodzie odnoasze wrazenie ze odpalasz bez tego |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 01:31 |