Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [skrypt] System newsów
Forum PHP.pl > Inne > Oceny
Pilsener
Witajcie, skrypt można pobrać tutaj:
http://www.pilsener.fr.pl/ps/news.rar

Instalacja prosta: rozpakowujemy i folder "news" wrzucamy do katalogu, w którym chcemy wyświetlić newsy. Następnie w pliku, w którym mają być wyświetlane newsy wklejamy kod:
Kod
<?php include 'news/pokaz.php';?>
- domyślna nazwa pliku to index.php, ale możemy ją zmienić w panelu konfiguracyjnym lub bezpośrednio w pliku konfiguracyjnym.

Wersja demo tutaj:
http://www.pilsener.fr.pl/ps/ - strona z newsami
http://www.pilsener.fr.pl/ps/news/login.php - strona z logowaniem

Dla testów dwa konta:
1. login: Test, hasło: test
2. login: Rumburak, hasło: rumburak

Krótki opis:
- skrypt oparty jest na plikach tekstowych, nie wymaga bazy danych
- powinien bez problemu działać na serwerach z register globals off i safe mode on
- wyświetlanie skrótów newsów, moderowanie ich
- panel administracyjny i system uwierzytelniania oparty na sesji
- ma opcję dodawania komentarzy do newsów oraz moderowania ich
- zaimplementowany filtr anty-spamowy sblam i rozbudowana walidacja komentarzy
- edycja wyglądu newsów i komentarzy przy pomocy szablonów
- banowanie
- selektywne przydzielanie uprawnień użytkownikom
- mini-profil, gdzie użytkownik może zmienić swoje hasło, nick lub link do swojej poczty lub www
- porcjowanie newsów i komentarzy oraz funkcjonalna i przyjazna nawigacja wspomagana cookies
- łatwa konfiguracja ważnych zmiennych typu liczba newsów na stronie, liczba słów w skrócie newsa itp.
- i rzecz najważniejsza - emotikonki

Ponieważ jestem tylko amatorem będę wdzięczny za uwagi odnośnie kodu lub interfejsu/funkcjonalności.
admkotek
Wszystko fajnie tylko takie rzeczy juz lepiej pisać obiektowo.
Ale tak poza tym to niezly. Troche kolorystyka niebardzo i te linki "komentarze" i "komentuj" zmieniaja wielkosc przy najezdzaniu co (przynajmniej mnie) troche irytuje - moga zmieniac np kolor a nie rozmiar. Nie wiem jak z zabezpieczeniami bo nie sprawdzalem.

Ogolnie przyzwoicie biggrin.gif
PUPI
Zbanowałem kilka nowych IP:

# 10.10.2007 | !@#$%^&*( | Odbanuj
# 10.10.2007 | weggwehewht | Odbanuj
# 10.10.2007 | r34.jh4.994.000 | Odbanuj

Proponuje sprawdzać czy wpisany text jest adresem IP.

Dodałem 1 news pt. "dlugi wyraz" - warto by było dzielić długie wyrazy.

Podczas komentowania newsa po kliknięciu na emot ikonkę proponuję odświeżać licznik znaków do wykorzystania.
20 znaków na adres email i 30 na adres WWW to za mało, proponuję sprawdzać ich poprawność w JS.
Pilsener
Admkotek:
- planuję nauczyć się programowania obiektowego, jednak na razie niezbyt mi to idzie :/
- wygląd jest zależny od CSS'ów, więc linki czy tam kolory można łatwo zmienić

PUPI:
- z tym IP mam problem, bo w planach mam banowanie nie tylko IP, lecz hosta. Postaram się znaleźć więcej info na ten temat i coś sensownego wymyślić
- dzielenie wyrazów w newsach wyłączyłem, gdyż uznałem, że redaktor-newsman jest osobą zaufaną i nie będzie robił takich sztuczek - ale łatwo to zmienić
- z odświeżaniem licznika myślę, że damy radę
- liczbę znaków na mail i www też łatwo zwiększyć
- do sprawdzania poprawności w JS czuję pewien dysonans (staram się unikać JS jak się da) , jednak też nie widzę problemu aby zastosować

Dziękuję Wam za uwagi.
mariusz_edw
Ok. Ale ja tam widzę jeden plik tekstowy stanowiący załą bazę. Jak będzie zbyt duży, to będzie spowalniał działanie serwisu.
Gdzieś widziałem newsy, które tworzyły oddzielne pliki dla każdego nowego miesiąca. Co myślicie o takim rozwiązaniu?
lectric
Jeśli chcesz uniknąć spamu w postaci: VIAGRA FREE itp
proponuje w dodawaniu komentarza:

- zdejmij link bezpośredni ze strony domowej (redirect)
- zabezpiecz po przez np. token obrazkowy
mariusz_edw
Brakuje mi jeszcze podziału newsów na kategorie, a bardzo zależałoby mi, aby taki podział pojawił się w tym właśnie skrypcie.

Kategorie np. wydarzenia, ogłoszenia, technicy, systemowe itp.

Wówczas możnabyłoby wybrać kategorię do wyświetlenia, ale też w różnych podstronach serwisu wyświetlać newsy tylko z wybranej kategorii.

Gdyby ktoś mógł dopisać do tego skryptu obsługę kategorii byłbym bardzo wdzięczny i zadowolony :-)

Acha, i być może zauważyłem bug-a. Po usunięciu dowolnego użytkownika pojawia się informacja, że jesteś zalogowany jako właśnie ten usuwany użytkownik, musisz się wtedy wylogować, i ponownie zalogować jako 'ty'.

Drugi bug - bardzo ciekawy, można założyć konto Mariusz Mariusz, ale nie da się mu nadać żanych uprawnień, we wszystkich innych sytuacjach (poza Mariuszem) działa prawidłowo, ciekawostka :-)
Pilsener
Cytat(lectric @ 24.01.2008, 23:27:47 ) *
- zabezpiecz po przez np. token obrazkowy
- wolę dawać token tylko tam, gdzie np. trzeba się zarejestrować itp. - planuję dodać pasywny filtr antyspamowy (pułapka na roboty, token automatyczny itp.) a aktywny filtr zewnętrzny zrobić jako opcję on/off w configu.


Mariusz_edw
- dzięki za info o bugach, postaram się przetestować i ew. poprawić. Planuję też zrobić podział na kategorię, możliwość wgrania pliku graficznego i prosty edytor HTML w formularzu (coś takiego, jak na tym forum), jednak brak czasu sadsmiley02.gif
mariusz_edw
Jeszcze jedna uwaga - nie daje się wstawiać linków, bo fragmenty URL-i interpretowane są jako emotikony i psują odsyłacze. Przydała by się globalna opcja wyłączenia emotikonek, oraz wyłączenie interpretowania emotikonek pomiędzy znacznikami <a></a>.

Wiem, jak to jest nie mieć czasu, ale trzymam kciuki, że niebawem nastąpi dalszy rozwój skryptu, bo uważam, że warto :-)
dave666
to bardzo fajny system newsów tylko problem tkwi w tym ze jak ktos ma strone w utf-8 to nie ma polskich znakow pisząc komentarze czy tez newsy
misiek172
podstawowy błąd fajnego systemu newsów: brak możliwości dodawania obrazków
MateuszS
Nie idzie pobrac oO. Wchodzac w link wyswietla mi sie strona zamiast pobrac plik. Tak jakbym plik .rar notatnikiem otwieral
blooregard
bug 1:
http://www.pilsener.fr.pl/ps/index.php?a=-12345

I mamy pustą stronę....

bug 2:
mozna wylistować zawartość katalogu z panelem administracyjnym:

http://www.pilsener.fr.pl/ps/news/


Ale to tylko takie luźne dygresje, byś zwracał troszkę uwagę na bezpieczeństwo.
Teraz to może Ci się wydawać nieistotne, ale jeśli nie nabierzesz odpowiednich nawyków, w przyszłości będziesz pisał skrypty podatne na RFI, LFI, XSS, CSRF, SQL Injection i inne "kombynejszyn" smile.gif
nasty
Cytat
Ponieważ jestem tylko amatorem będę wdzięczny za uwagi odnośnie kodu lub interfejsu/funkcjonalności.
Jak na moje oko, to tam nie ma niczego czego mozna nazwac interfejsem, to tak jakbys chcial sporzadzic portret pamieciowy ikonki usera w windowsie xp.
Strarus
zobacz jak teraz wygląda strona Twoich newsów...
l0ud
ekhm, ten temat ma już rok winksmiley.jpg Nie sądzę, żeby autor skryptu jeszcze go wspierał, a ew. poprawa polegałaby zapewne na przepisaniu skryptu od nowa smile.gif
Strarus
strip_tags by pomogło - u mnie pomogło haha.gif zresztą i tak mi się layout nie podoba haha.gif
Pilsener
Szkoda, że nie pisaliście, kiedy temat był na bieżąco smile.gif

Cytat
brak możliwości dodawania obrazków
- w aktualnej wersji taka możliwość jest, tylko nie wiem jeszcze, jak to elegancko połączyć z jakimś FCK editorem etc. Na razie mam tak, ze po prostu user uploaduje obrazek i może go wybrać z listy, a jak kliknie to mu wstawia link do tego obrazka.

Cytat
strip_tags by pomogło
- no pewnie, tylko jak użytkownik mógłby edytować wtedy kod html? W obecnej wersji mam możliwość wyłączenia konkretnemu userowi możliwości użycia HTML lub wyłączenia/włączenia określonych tagów - też kombinuję, jakby to łatwo połączyć w jedną całość.
.radex
Wygląd tragiczny, ale kod całkiem niezły. W zasadzie jedyne do czego bym się przyczepił to nadużywanie klas, które w niektórych miejscach wydają się zbędne. Nie rozumiem tylko, czemu ten system działa na plikach... No ale to już Twoja sprawa. Funkcjonalność - ok, ale na przykład zobacz to:

http://www.pilsener.fr.pl/ps/index.php?i=31&go=bla

nie wiem czy to tak powinno być winksmiley.jpg

Cytat
- zabezpiecz po przez np. token obrazkowy


nieee!
Pilsener
Wygląd panelu jest tymczasowy - wyglądem zajmuję się dopiero wtedy, kiedy już wszystko jest dopięte i przetestowane, bo nie wiadomo, co tam jeszcze dojdzie - ogólnie to kiepsko mi idzie z wyglądem, wolę kodować.

A na plikach bo po pierwsze - na bazie to żadna sztuka winksmiley.jpg no i chciałem się poduczyć obsługi plików - a po drugie, dużo osób szukało systemu na plikach (kiedyś darmowe hostingi nie dawały bazy) i takiego w miarę dobrego brakuje (w przeciwieństwie do systemów opartych na mysql).

W sumie w programowaniu rok to dość długo - jak teraz na to patrzę, to faktycznie dość biednie to wygląda guitar.gif
.radex
Cytat(Pilsener @ 3.01.2009, 20:03:27 ) *
A na plikach bo po pierwsze - na bazie to żadna sztuka winksmiley.jpg no i chciałem się poduczyć obsługi plików - a po drugie, dużo osób szukało systemu na plikach (kiedyś darmowe hostingi nie dawały bazy) i takiego w miarę dobrego brakuje (w przeciwieństwie do systemów opartych na mysql).


Na bazie jest szybciej, łatwiej i lepiej. Na bazie danych masz większe możliwości. Są rzeczy, których samodzielna implementacja byłaby trudna, a na bazie to kwestia jednego zapytania. Piszesz, że kiedyś darmowe hostingi nie dawały bazy, a przecież teraz wszędzie dostajesz MySQL.

Cytat
W sumie w programowaniu rok to dość długo - jak teraz na to patrzę, to faktycznie dość biednie to wygląda guitar.gif


Rok czasu jak na taki projekt to bardzo długo. Za długo.
obelix94
Panuje tam niezły burdel...
Twój skrypt może być super, jako baza do przeróbek. Ogólnie wszystko ok, system. Ja bym tego nie zrobił wcale. Kawał dobrej roboty. Zmienić wygląd, pare innych drobiazgów (do własnych potrzeb).
Pilsener
Cytat
Panuje tam niezły burdel...

Bo zawsze jak dasz konto do testowania systemu to pierwsze co (na szczęście nie każdy) robi to zmienia wszystkie ścieżki i doda swój templat z napisem "hacked by elo ziom" biggrin.gif

Cytat
Na bazie jest szybciej, łatwiej i lepiej. Na bazie danych masz większe możliwości. Są rzeczy, których samodzielna implementacja byłaby trudna, a na bazie to kwestia jednego zapytania. Piszesz, że kiedyś darmowe hostingi nie dawały bazy, a przecież teraz wszędzie dostajesz MySQ
- zdaję sobie z tego sprawę, dlatego teraz już wszystko robię na bazie, chyba, że płacą, żeby było na plikach.

Cytat
Rok czasu jak na taki projekt to bardzo długo
- miałem na myśli, że ktoś po roku odkopał ten temat smile.gif
X_x_XXX_x_X
Można prosić o nowy link? Coś mi nie działa ta strona. System fajnie się prezentuje. Tylko jedna linijka i wszystko gotowe tongue.gif
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-2025 Invision Power Services, Inc.