Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SKRYPT] Początek prac nad CMSem
Forum PHP.pl > Inne > Oceny
materkamil
Tworzę CMSa, jednak nie wiem czy obecnie jest wszystko poprawne. Nie chcę pisać dalej tylko pogłębiając błędy dlatego też chciałbym tu umieścić pierwsze pliki i kody mojego CMSa. Na razie nie nadaje się to do niczego, ponieważ jeszcze nawet nie działa on poprawnie jednak chciałbym wiedzieć czy można to dalej kontynuować właśnie tak jak ja piszę? Oto kod:

http://www.sendspace.pl/file/eb66b19076d605acf5918c3/scms

Jak to działa można zobaczyć tu:

http://94.251.191.53/scms

http://94.251.191.53/scms/admin

Dane do panelu:
Login: admin
Hasło: haslo

Działa na localhost więc w nocy na pewno nie będzie ta strona aktywna
Niktoś
No to newsy Ci nie działają problem z require once.
Ech może daj do oceny całość jak zrobisz.
materkamil
Cytat
Ech może daj do oceny całość jak zrobisz.


Ostatnio dałem całość, i całość musiałem poprawiać. Dlatego teraz dam początek upewnić się czy wszystko jest dobrze
Niktoś
Nie jest dobrze-sypie błędami.
peter13135
Pomieszane html z php (w niektórych miejscach). Fajnie, że próbujesz zrobić modułowość, ale na zbyt elastyczną nie wygląda... i wszystko to robisz strukturalnie. Trochę dziwne to, że sktypt malutki, a masz błędy w panelu admina od razu po wejściu.
materkamil
Cytat(peter13135 @ 26.09.2012, 20:23:22 ) *
Pomieszane html z php (w niektórych miejscach).


To pomieszanie z HTML to miejsca stałe takie jak logowanie do panelu admina w którym nie działają szablony.

Cytat
Fajnie, że próbujesz zrobić modułowość, ale na zbyt elastyczną nie wygląda...


Moduły to przełom w moich projektach, dopiero początki

Cytat
i wszystko to robisz strukturalnie.


Tak, lubię strukturalne programowanie chociaż w PDO stosuje obiekty.

Cytat
Trochę dziwne to, że sktypt malutki, a masz błędy w panelu admina od razu po wejściu.


Te błędy to po prostu brak modułów, które jeszcze nie stworzyłem
!*!
Cytat
Tak, lubię strukturalne programowanie chociaż w PDO stosuje obiekty.

Nie ma przed Tobą przyszłości w tej branży.
peter13135
Cytat(!*! @ 27.09.2012, 07:42:35 ) *
Nie ma przed Tobą przyszłości w tej branży.


Ma chłopak zapał, więc już połowa sukcesu. Niestety (?) ale świat programowania idzie w kierunku obiektowości, więc siłą rzeczy jeśli chcesz być programistą, to musisz się tego nauczyć. Mogę Cię zapewnić, że obiektowo pisze się "fajniej". Myślę, że pisanie kodu strukturalnego też da Ci jakieś tam wiadomości i doświadczenie.
Adi32
Materkamil, lubisz strukturalne czy po prostu nie poznałeś zalet obiektowości? Bo trudno uwierzyć aby ktoś pisał w ten sposób poznawszy programowanie obiektowe.
Jeżeli poznałeś obiektowość i jego zalety i mimo to "lubisz" strukturalne to niestety !*! ma rację, zamykasz przed sobą drzwi.
usb2.0
zacznij wrzucać na gita a nie sendspace może
ciekawskiii
juz kiedys o tym pisalem, przestancie kazdemu wmawiac jak ma pisac... to juz jest irytujace i nudne, to, ze wy piszecie obiektowo i w PDO to nie znaczy ze kazdy musi, kazdy pisze jak mu wygodnie, jaki ma nastroj i jak mu sie chce i jak akurat podtarl du.... to tak pisze, czy wam kaze ktos jesc ser skoro nigdy nie jedliscie i go nie lubicie? ten dzial i inne na tym forum nie maja w nazwie "jak lepiej pisac" a w co drugim temacie znajdzie sie jakis madry i poucza bo sam tak pisze.

ja powiem tak. PDO i obiektowosc nie rozni sie praktycznie niczym, ktos wymyslil obiektowosc i PDO i trzepie na tym niezla kase a wy podjarani tym ze sie nauczyliscie i teraz jestescie goscie. wow!

Cytat
Jeżeli poznałeś obiektowość i jego zalety i mimo to "lubisz" strukturalne to niestety !*! ma rację, zamykasz przed sobą drzwi.


jakie drzwi? przed czym albo przed kim?
Niktoś
Cytat
ja powiem tak. PDO i obiektowosc nie rozni sie praktycznie niczym, ktos wymyslil obiektowosc i PDO i trzepie na tym niezla kase a wy podjarani tym ze sie nauczyliscie i teraz jestescie goscie. wow!


Szkoda, że Ty tego się nie nauczyłeś. Byś w ogóle tak nie pisał. Obiektowość to przede wszystkim jedna z cech, którą posiada PDO.Jakbyś nie wiedział to jest dobre narzędzie do komunikacji z bazą/bazami danych i przede wszystkim jest dostępne dla każdego za darmo. Nikt z tego zysku nie czerpie. Team/osoba która wymyśliła to narzędzie jedynie zdobyła na swoim prestiżu.
redeemer
Haha no to kolega ciekawskii pojechał smile.gif Swoje pierdółki, małe skrypty czy nawet te wielkie możesz sobie pisać w domowym zaciszu jak Ci się podoba. Możesz nawet olać PHP i pisać strony bezpośrednio w C, ale prędzej czy później jak pójdziesz pracować, to życie zweryfikuje Twoje poglądy.

Cytat
... czy wam kaze ktos jesc ser skoro nigdy nie jedliscie i go nie lubicie? ...
Skoro nigdy go nie jadłem, skąd mam wiedzieć, że go nie lubię?

Cytat
... ten dzial i inne na tym forum nie maja w nazwie "jak lepiej pisac" a w co drugim temacie znajdzie sie jakis madry i poucza bo sam tak pisze ...
Jest to dział oceny, a ocena skryptu to na czym polega Twoim zdaniem? OOP to standard czy tego chcesz, czy nie i dlatego uważam, że komentarze lepiej doświadczonych użytkowników są wiele warte dla autora tematu. Jak ktoś by pisał w jednej linii skrypt, nazwy zmiennych nazywał $as2j4kjdfs to też byś twierdził, że nie ma sensu go pouczać?

Cytat
... PDO i obiektowosc nie rozni sie praktycznie niczym ...
PDO i obiektowość to dwie całkiem różne rzeczy.

Cytat
... ktos wymyslil obiektowosc i PDO i trzepie na tym niezla kase ...
biggrin.gif Nie mogę uwierzyć, Ty tak na serio?
ciekawskiii
Cytat(Niktoś @ 27.09.2012, 19:06:24 ) *
Szkoda, że Ty tego się nie nauczyłeś. Byś w ogóle tak nie pisał. Obiektowość to przede wszystkim jedna z cech, którą posiada PDO.Jakbyś nie wiedział to jest dobre narzędzie do komunikacji z bazą/bazami danych i przede wszystkim jest dostępne dla każdego za darmo. Nikt z tego zysku nie czerpie. Team/osoba która wymyśliła to narzędzie jedynie zdobyła na swoim prestiżu.


rownie za darmo jak php, mysql, javascript, python, flash itp. i nikt na tym oczywiscie nie zarobil, wymyslil i dal to ludziom charytatywnie a Ci co wymyslili css3 to tez oczywiscie robia to za darmo bo maja taki kaprys. masz mnie i innych za idiote?

skoro ta obiektowosc to taka swietna sprawa to powiedz co w tym lepszego? bo ja nie widze zadnej a wrecz widze wady, trudniejsza do nauki tym bardziej dla laikow ktorym kazdemu proponujecie.
phpion
Panowie - trzymajmy się tematu. Programowanie strukturalne vs. obiektowe to temat na osobny wątek.

Jeśli chodzi o przedstawiony projekt to masa rzeczy nie działa i rzuca błędami. To co działa nadaje się jednak do poprawki. W zasadzie mamy tu tylko zarządzanie menu. No i moje uwagi:
1. Mam formularz, w którym mogę zmienić nazwę pozycji w menu. Spoko, wpisuję inną nazwę, zatwierdzam zmiany i co? Widzę poprzednią wartość. Dopiero po odświeżeniu strony widzę aktualną (przed chwilą wpisaną). Najwidoczniej w złej kolejności robisz operacje - najpierw wyświetlasz dane, a potem ewentualnie aktualizujesz.
2. Generalnie zbyt wiele nie można zmienić w menu - jedynie tekst wyświetlany. Przydałaby się możliwość edycji strony docelowej, przesuwanie elementów względem siebie.
3. Ingerując w formularz edycji elementu menu za pomocą Firebuga można otrzymać:
Cytat
Notice: Undefined index: dupa in C:\wamp\www\tonacje\sCMS\admin\elements\menu.php on line 31

Dzieje się tak gdy zmieniam wartość ukrytego pola lub nazwę pola tekstowego. Powinieneś i to obsłużyć, pisz od razu bezpiecznie. Sprawdzaj wszystkie możliwe scenariusze jak np. brak przesłanej wartości, której oczekujesz.

Moim zdaniem wątek nadaje się do zamknięcia. Nie dajemy do ocen prac, które nie są ukończone. Na chwilę obecną zostawię jednak wątek otwarty, zobaczymy jak rozwinie się projekt. Gdy będziesz miał coś więcej do pokazania - wróć.
szalek01
1) Poczytaj:
http://helion.pl/ksiazki/projektowanie-sys...rens,psycms.htm
http://helion.pl/ksiazki/programowanie-obi...yder,probph.htm

2) Pokochaj OOP

Dlaczego ?
Jeśli zamierzasz pisać tylko dla siebie bazując na "wzorcach" sprzed kilku lat, ok można. Ale uwierz mi jak skończysz tego cms znienawidzisz go. Choćbyś nie wiem jak dobrze planował, nie sadzę że będzie skalowalny a i nikt nie będzie Ci chciał w takim spaghetti pomagać.

Rozumiem że chciałbyś zacząć programować od razu.
Ale na razie poczytaj:
- czym jest PDO żeby nie strzelać tekstami smile.gif.
- MVC lub HMVC.
- ZF, Symfony 2 i innych.

Jeśli posłuchasz ludzi piszących obiektowo nie będziesz chciał spalić tego CMS na stosie jak go skończysz...
ciekawskiii
Cytat
Jest to dział oceny, a ocena skryptu to na czym polega Twoim zdaniem? OOP to standard czy tego chcesz, czy nie i dlatego uważam, że komentarze lepiej doświadczonych użytkowników są wiele warte dla autora tematu. Jak ktoś by pisał w jednej linii skrypt, nazwy zmiennych nazywał $as2j4kjdfs to też byś twierdził, że nie ma sensu go pouczać?


skoro to standard to moze zmiencie regulamin forum oceny? ze tylko w OOP mozna dawac do oceny? i tylko w css3 bo taki standard?

Cytat
Swoje pierdółki, małe skrypty czy nawet te wielkie możesz sobie pisać w domowym zaciszu jak Ci się podoba. Możesz nawet olać PHP i pisać strony bezpośrednio w C, ale prędzej czy później jak pójdziesz pracować, to życie zweryfikuje Twoje poglądy


chwila chwila, czy Ty myslisz, ze kazdy kto tu daje cos do oceny czy pisze nowy temat to bedzie pracowal jako programista php? bo tak z tego wywnioskowalem i zauwazylem , ze tu wiekszosc tak mysli. Nawet bardzo rozbudowany skrypt (dla siebie i miliona ludzi) mozna napisac w zwyklych funkcjach i w mysql, trzeba ruszyc tylko glowa jak to poskladac i tyle, PDO to ulatwnienie dla leni ktorym nie chce sie nic zabezpieczac
!*!
Cytat(ciekawskiii @ 27.09.2012, 19:22:26 ) *
masz mnie i innych za idiote?

Na prawdę chcesz znać odpowiedź?

Cytat(ciekawskiii @ 27.09.2012, 19:22:26 ) *
skoro ta obiektowosc to taka swietna sprawa to powiedz co w tym lepszego? bo ja nie widze zadnej a wrecz widze wady, trudniejsza do nauki tym bardziej dla laikow ktorym kazdemu proponujecie.

Było już wiele razy, dla kogoś tak wprawnego jak Ty, użycie wyszukiwarki pewnie nie stanowi problemu.
Nie unoś się tak, bo przegrasz wink.gif ale jak tak bardzo chcesz, zgłoś ten wątek do moderatora, aby odłączył go do HP.
!*!
Cytat
PDO to ulatwnienie dla leni ktorym nie chce sie nic zabezpieczac

Czy Ty nie jesteś bratem jego?
Niktoś
Cytat
rownie za darmo jak php, mysql, javascript, python, flash itp. i nikt na tym oczywiscie nie zarobil, wymyslil i dal to ludziom charytatywnie a Ci co wymyslili css3 to tez oczywiscie robia to za darmo bo maja taki kaprys. masz mnie i innych za idiote?


Poczytaj może o licencjach , może Ci coś się rozjaśni. PHP,JS,może python jest darmowy-mysql ze wsparciem technicznym już nie, flash nie jest darmowy. Ci co napisali dobrą rzecz jak js/php zdobyli prestiż w świecie informatyki, a co za tym idzie ciepła posadka w bardzo dobrych korporacjach za niezłe pieniążki i poszanowanie w świecie informatyki.

Cytat
skoro ta obiektowosc to taka swietna sprawa to powiedz co w tym lepszego? bo ja nie widze zadnej a wrecz widze wady, trudniejsza do nauki tym bardziej dla laikow ktorym kazdemu proponujecie.


Wytłumaczę może jak laikowi choć sam ekspertem nie jest toć wiem ,że :
Przy dużych projektach zginiesz bez OOP.Rozbudowa/wstawka o dodatkowe właściwości jakiegoś dużego systemu pisanego strukturalnie może być, a na pewno będzie katastrofalna.

Programowanie strukturalne sprawdza się i jest zalecane przy małych projektach, które raczej nie będą w przyszłości rozbudowywane.
szalek01
Przepraszam!!!! źle zrozumiałem...
Usunąłem post który nic nie wnosił do rozmowy a był pomyłką.
phpion
Panowie, hola! Kończymy te przepychanki - jeśli macie coś sobie do przekazania to piszcie na PW. Kolejne posty nie na temat zostaną odpowiednio nagrodzone.
ciekawskiii
Cytat(szalek01 @ 27.09.2012, 19:36:56 ) *
to jest dobre...


nie usuwam by nie dostać bana. ale przepraszam za ten post



Cytat(!*! @ 27.09.2012, 19:38:55 ) *
Czy Ty nie jesteś bratem jego?


PDO to taka zaleta ze nie musisz zabezpieczac przed SQL injection i o to mi tylko chodzilo, jaka jeszcze zaleta?

OOP jaka zaleta? szukalem w google i sie uczylem, czytalem, szukalem wiele ale wybaczcie, nie znalazlem odpowiedzi na moje pytanie?? to co jest w OOP to mam to samo w funkcjach i jak juz pisalem, trzeba myslec zeby wiedziec jak to poskladac

Cytat
Przy dużych projektach zginiesz bez OOP.Rozbudowa/wstawka o dodatkowe właściwości jakiegoś dużego systemu pisanego strukturalnie może być, a na pewno będzie katastrofalna.


jak wyzej
Niktoś
Cytat
OOP jaka zaleta? szukalem w google i sie uczylem, czytalem, szukalem wiele ale wybaczcie, ale nie znalazlem odpowiedzi na moje pytanie?? to co jest w OOP to mam to samo w funkcjach i jak juz pisalem, trzeba myslec zeby wiedziec jak to poskladac


Myślę ,że kolega sam dojdzie do wniosku, że jednak lepiej pisać/używać OOP jak będzie pisał większe projekty. Widocznie, każdy musi uczyć się na własnej skórze.Ja też tak kiedyś miałem wink.gif
Z mojej strony, koniec offtopu.
Odnośnie tematu , projekt nie ukończony o czym pisał autor tematu więc jaki jest wobec tego regulamin?
ciekawskiii
pisze duze projekty na ktorych siedzi kilkadziesiat tysiecy ludzi, malo? no pewnie Ty piszesz wieksze, pozdrawiam Cie a teraz prosze administracje o usuniecie mojego konta bo na forum w ktorym sie wszystko narzuca i kazdy jest madrzejszy ( bo taki standard) nie zamierzam siedziec. moze zrobcie forum dla programistow php? oj sorki, to juz takie forum wlasnie jest. tyle w temacie.
!*!
http://forum.php.pl/index.php?showtopic=205797

phpion - pokasuj to już. (tzn. niepotrzebne posty).
materkamil
Może autor coś powie. Co do PDO, bardzo to popieram, to jest standard i nawracanie na używanie go zamiast mysql_* jest jak najbardziej poprawne.

Co do obiektowości, to zależy od woli programisty, więc nie wiem po co taki bój. Znam podstawy OOP jednak po prostu bardzo dobrze czuję się w strukturalnym

Co do zmiany przez firebuga name ukrytego pola, nie uważam tego za błąd bo do panelu admina ma dostęp tylko admin, więc takie informacje on zna.
adbacz
Cytat(materkamil @ 27.09.2012, 20:09:26 ) *
Co do zmiany przez firebuga name ukrytego pola, nie uważam tego za błąd bo do panelu admina ma dostęp tylko admin, więc takie informacje on zna.

No dobrze, a jeśli z panelu administratora korzystać będzie więcej niż jedna osoba - załóżmy, że tyle osób, ile jest wersji językowych strony plus ze 3 administratorów i kilku moderatorów? To jest jaknajbardziej oczywisty scenariusz. Nie można pisać aplikacji (a raczej nie powinno się), zakładając, że znał ją będzie tylko jeden user (administrator) i on na pewno będzie wiedział, że tego nie można ruszać.

Z racji tego, niezależnie gdzie jest mozliwośc popełnienia błędu przesyłanych danych, czy to panel zarządzania dla admina czy to strona główna dla zwykłego użytkownika - filtrujemy dane i sprawdzamy poprawność kodu pod każdym względem.
Wiem, że to może troszkę dużo jak na osobę, która (przepraszam, ale nie wiem jak długo piszesz w PHP) ma troszkę więcej niż podstawy za sobą, ale uwierz mi na słowo - to się na Tobie nie zemści, ba, za jakiś czas dostrzeżesz zalety tego, że zacząłeś foltrować dane i unikać błędów - jakichkolwiek błędów (czyli na przykład tak jak było wyżej z tym indeksem tablicy po zmianie atrybutu name ukrytego pola).

Nikt Ci nie narzuca pisania tak czy inaczej, ale czasami warto pomyśleć, czy na pewno idzie się w dobrym kierunku. Jeśli filtrowanie danych i sprawdzanie ww. rzeczy ma tylko zająć Ci jakieś 8% czasu jaki poświęcisz na aplikację a w przyszłości ma Ci to pomóc (nawet nie wyobrażasz sobie, jak często mała rzecz, którą dodałeś "od tak sobie bo CI sie przypomniało" sprawia, że nagle ta mała rzecz spowodowała, że nie ma lawiny błędów, które byłyby z jej przyczyny.
peter13135
Cytat(materkamil @ 27.09.2012, 20:09:26 ) *
Może autor coś powie. Co do PDO, bardzo to popieram, to jest standard i nawracanie na używanie go zamiast mysql_* jest jak najbardziej poprawne.

Co do obiektowości, to zależy od woli programisty, więc nie wiem po co taki bój. Znam podstawy OOP jednak po prostu bardzo dobrze czuję się w strukturalnym

Co do zmiany przez firebuga name ukrytego pola, nie uważam tego za błąd bo do panelu admina ma dostęp tylko admin, więc takie informacje on zna.


Masz prawo myśleć co chcesz i pisać w czym i jak chcesz. Skoro lubisz pisać strutkrualnie to raczej nikt Ci nie zabroni. Jak zrobisz komuś nieobeznanemu w temacie bloga czy jakikolwiek inny skrypt obiektowo, to klient wcale nie będzie narzekał na to, że ten skrypt jest struktualnie napisany, bo pewnie o tym nie będzie miał zielonego pojęcia. Prędzej będzie narzekał na to, że jakiś button ma zły kolor i rozmiar. Bez względu na to, czy będziesz pisał strukturalnie, czy obiektowo będziesz w stanie zrobić to samo.

Ale jeśli chcesz być dobrym programistą, to siłą rzeczy będziesz zmuszony pisać obiektowo, bo tak sobie "z niewiadomego powodu" 99% programistów myśli, że obiektówka jest fajniejsza. Również tak myślę, chociaż jeszcze nie poznałem nawet większości zalet obiektówk. To nic, że Ty potrafisz cuda tworzyć struktualnie i nie lubisz obiektówki, tworząc projekt grupowo, będziesz zmuszony pisać obiektowo, no.. chyba, że sam założysz firmę, która będzie zatrudniać ludzi którzy lubią pisać strukturalnie (polecam, żebyś już teraz wziął namiary od osób, które w tym temacie marudzą na obiektówkę), to wtedy będziesz narzucał taki tryb pracy jaki Ci się bedzie podobał. Zrobisz swoje "white list" na to co można pisać obiektowo (gdzie będzie tylko PDO) a resztę kodu Twoje drużyna będzie pisać strutkualnie. Za nie trzmanie się reguł będziesz obcinał pensje. W małych projektach (bo dużych nie robię, ale to też sprawa dyskujsyjna jaki projekt jest duży) ta obiektówka wcale nie daje jakichś super korzyści, bo w miarę łatwo się połapać i jakoś sobie kod ładnie rozplanować, poprawki jakie by nie były, nie psują całej architektury, bo przecież to tylko mały projekt, gdzie zależności różnych klas są niewielkie. Problem zaczyna się dopiero wtedy, gdy normalny obiektowy programista chciałby ten projekt przerobić. Pewnie by się połapał o ile jest dobrze zaprojektowany, ale po prostu programiści wolą obiektówkę, więc może mu się nie podobać wink.gif

Moim zdaniem, warto, żeby trochę tych programistów z tego tematu pisało strutkuralnie tak jak im się podoba. Po co nam (raczej wam, mi to jeszcze trochę czasu trzeba) konkurencja* ?

*Mam nadzieję, że nikogo nie uraziłem
phpion
Cytat(materkamil @ 27.09.2012, 20:09:26 ) *
Co do zmiany przez firebuga name ukrytego pola, nie uważam tego za błąd bo do panelu admina ma dostęp tylko admin, więc takie informacje on zna.

Panel admina czy strona ogólnodostępna - nie ma to znaczenia. Jeśli przyjmiesz za podstawę brak zaufania do osób korzystających z systemu to zabezpieczysz każdą aplikację bez względu na docelowe miejsce jej wykorzystania. Ucz się od razu dobrych nawyków, a dobrze na tym wyjdziesz.
!*!
materkamil, wywal te funkcje z szablonu na rzecz zmiennych.
Popatrz na ten kod:

  1. function test()
  2. {
  3. return chr(rand(97, 122));
  4. }
  5.  
  6. $test = chr(rand(97, 122));
  7.  
  8. echo '<div style=color:green>'.$test.'</div>';
  9. echo '<div style=color:green>'.$test.'</div>';
  10. echo '<div style=color:green>'.$test.'</div>';
  11. echo '<div style=color:green>'.$test.'</div>';
  12.  
  13. echo '<div style=color:red>'.test().'</div>';
  14. echo '<div style=color:red>'.test().'</div>';
  15. echo '<div style=color:red>'.test().'</div>';
  16. echo '<div style=color:red>'.test().'</div>';


Widzisz różnice w działaniu? A teraz pomyśl co się stanie, gdy będziesz chciał pobierać coś bardziej skomplikowanego.
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.