Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> Serwis z obrazkami a'la kwejk
Turson
post 6.02.2014, 00:14:42
Post #1





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Właśnie ukończyłem pierwszy w pełni swój projekt w Yii.
Serwis nie jest niczym nowym, to kopia stron typu kwejk.pl. Jednakże to nie ma być serwis komercyjny, a dla treningu i może do portfolio (?).
Grafiki raczej nie ma co oceniać, bo całość oparłem na Yiistrapie, gdyż moim celem było tylko Yii.

Z funkcjonalności:
- rejestracja (+ aktywacja konta - kod przychodzi na e-mail), logowanie
- dodawanie, usuwanie(własnych), ocenianie, obrazków
- system komentarzy, odpowiedzi na komentarze, ocenianie ich
- system ulubionych obrazków
- obrazki: najlepsze, losuj itd.
- stronicowanie
- panel administratora
- admin/moderator może przenosić obrazki na stronę główną, do poczekalni albo usuwać (ajax)
- i pewnie o czymś zapomniałem

http://vip1.bdl.pl/turson/obrazki/index.php

Konto admina: admin/admin
Celowo zablokowałem możliwość zmiany hasła, usuwanie konta, edycja usera (panel admina), żeby ktoś mądry zaraz się zbytnio nie zabawił... smile.gif

Czekam na odpowiedzi!
Go to the top of the page
+Quote Post
phpion
post 6.02.2014, 08:36:24
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




http://vip1.bdl.pl/turson/obrazki/index.php?r[]=site/poczekalnia - ale to wina Yii
http://vip1.bdl.pl/turson/obrazki/index.ph...ite/view&id[]=62&title=ccccc - ale to już Twoja wina

No i zabezpiecz głosowanie bo można tam cuda wyprawiać (Firebugiem):
Kod
PHP Error [2]

Creating default object from empty value (/home/vip1/domains/vip1.bdl.pl/public_html/turson/obrazki/protected/views/site/rate_image.php:13)

#0 /home/vip1/domains/vip1.bdl.pl/public_html/turson/obrazki/protected/views/site/rate_image.php(13): CWebApplication->handleError()
#1 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CBaseController.php(126): require()
#2 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CBaseController.php(95): SiteController->renderInternal()
#3 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CController.php(869): SiteController->renderFile()
#4 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CController.php(782): SiteController->renderPartial()
#5 /home/vip1/domains/vip1.bdl.pl/public_html/turson/obrazki/protected/controllers/SiteController.php(119): SiteController->render()
#6 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/actions/CInlineAction.php(49): SiteController->actionRate_image()
#7 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CController.php(308): CInlineAction->runWithParams()
#8 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CController.php(286): SiteController->runAction()
#9 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CController.php(265): SiteController->runActionWithFilters()
#10 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CWebApplication.php(282): SiteController->run()
#11 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/web/CWebApplication.php(141): CWebApplication->runController()
#12 /home/vip1/domains/vip1.bdl.pl/public_html/turson/yii/framework/base/CApplication.php(180): CWebApplication->processRequest()
#13 /home/vip1/domains/vip1.bdl.pl/public_html/turson/obrazki/index.php(15): CWebApplication->run()
Go to the top of the page
+Quote Post
Turson
post 6.02.2014, 12:32:31
Post #3





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Pierwszy link - skoro Yii, to chyba nic nie poradzę
Drugi link - co jest źle? To, że wywali error 400 to wydaje mi się prawidłowe (zamiast wykrzaczenia jak link 1.)
Ajax - chyba poprawiłem.
Go to the top of the page
+Quote Post
phpion
post 6.02.2014, 13:06:45
Post #4





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




2. Kod 400 chyba nie jest prawidłowym rozwiązaniem, lepszy byłby chociażby 404.
3. Generalnie tak. Zastanowiłym się jednak nad sensem pola "kto". Można tam wpisać dowolną liczbę i nabijać głosy. Nie możesz tego pobierać z sesji? Przy okazji widać, że nie masz więzów integralności (kluczy obcych) skoro zapisuje głosy użytkowników, którzy nie istnieją.
Go to the top of the page
+Quote Post
nospor
post 6.02.2014, 13:08:47
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Czemu moge oceniac obrazek do bólu?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Turson
post 6.02.2014, 13:29:43
Post #6





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Cytat(phpion @ 6.02.2014, 13:06:45 ) *
2. Kod 400 chyba nie jest prawidłowym rozwiązaniem, lepszy byłby chociażby 404.
3. Generalnie tak. Zastanowiłym się jednak nad sensem pola "kto". Można tam wpisać dowolną liczbę i nabijać głosy. Nie możesz tego pobierać z sesji? Przy okazji widać, że nie masz więzów integralności (kluczy obcych) skoro zapisuje głosy użytkowników, którzy nie istnieją.

2. Popracuję nad tym, ale to Yii sam generuje ten błąd jeżeli w metodzie podam parametr $id.
3. Pola "kto" już nie ma, bo to rzeczywiście bezsens i zastąpiłem po prostu pobraniem id zalogowanego usera Yii::app()->user->id

Cytat(nospor @ 6.02.2014, 13:08:47 ) *
Czemu moge oceniac obrazek do bólu?

Zakomentowałem wcześniej ten warunek. Poprawione.

Ten post edytował Turson 6.02.2014, 13:31:02
Go to the top of the page
+Quote Post
phpion
post 6.02.2014, 13:59:00
Post #7





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




2. Wystarczy zrzutować parametr id na inta. Jeśli ktoś przekaże id[]=123 (czyli tablicę) to dostaniesz 0. Obrazek o podanym id nie istnieje więc możesz wywalić 404.
Go to the top of the page
+Quote Post
Turson
post 6.02.2014, 14:53:27
Post #8





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


mam metodę
  1. public function actionView($id){
  2. ...
  3. }

Nie mogę zrzutować, bo Yii samo wywala błąd, jeżeli parametr nie istnieje i wtedy cała metoda się nie wykonuje.
Go to the top of the page
+Quote Post
usb2.0
post 6.02.2014, 15:05:44
Post #9





Grupa: Zarejestrowani
Postów: 341
Pomógł: 25
Dołączył: 28.09.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


no dobra dobra, gdzie sa obrazki?
Go to the top of the page
+Quote Post
Turson
post 6.02.2014, 15:12:38
Post #10





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


W poczekalni. Było więcej, ale ktoś usuwa ciągle.
Go to the top of the page
+Quote Post
nospor
post 6.02.2014, 15:20:11
Post #11





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Klikajac LOSUJ, pojawia sie w pasku url z TITLE, ktore ma sie nijak do aktualnego zdjecia. Zazwyczaj jest to zdjecie ktore bylo poprzednio

ps: po co w ogole dodajesz ten title, skoro mozna tam wpisac doslownie wszystko, a co za tym idzie pozycjonowac dany url pod rozne ciekawe slowa wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Turson
post 6.02.2014, 15:21:37
Post #12





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Losowanie poprawiłem.
Title jest tylko w celach estetycznych, bo id jest jedynym kryterium.
Go to the top of the page
+Quote Post
nospor
post 6.02.2014, 15:27:11
Post #13





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Jak chcesz miec estetyke to popraw to wszystko na ladne urle.
I jesli juz podajesz title, to sprawdzaj czy ktos nie wpisal tam czegos innego i jak tak to przekieruj na poprawny adres. Ktos moze sobie kawaly robic.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
lukasz1985
post 6.02.2014, 22:58:41
Post #14





Grupa: Zarejestrowani
Postów: 205
Pomógł: 43
Dołączył: 5.03.2012

Ostrzeżenie: (0%)
-----


Można wiedzieć jak długo to robiłeś ( w godzinach efektywnej pracy) i jak dobrze znasz ten framework ?
Go to the top of the page
+Quote Post
Turson
post 7.02.2014, 00:11:14
Post #15





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Zajęło mi to 5 dni. Ile godzin dziennie nie potrafię powiedzieć, bo to nie praca, gdzie ma się jakiś etat smile.gif Znam Yii na tyle co widać po stronie.
Go to the top of the page
+Quote Post
lukasz1985
post 7.02.2014, 11:09:32
Post #16





Grupa: Zarejestrowani
Postów: 205
Pomógł: 43
Dołączył: 5.03.2012

Ostrzeżenie: (0%)
-----


A pracowałeś ciągle? W sensie ile godzin dziennie spędzałeś nad tym projektem? Pytam bo rozważam naukę tego frameworka, natomiast sam klepałem CMSa + frontend w CodeIgniterze przez 4 dni (ok 10 h/d), z tym, że CI znam dobrze.
Wiem że pytanie jest tendencyjne bo i tak trzeba będzie zajrzeć w API ale takie informacje są pewną wskazówką.

Natomiast strona wygląda konkretnie od strony funkcjonalnej, a rozumiem, że nie zawdzięczasz tego całkiem sam sobie tylko też temu co ma do zaoferowania framework i stąd też moje zainteresowanie.

Trochę off-topic z mojej strony ale myślę, że nic strasznego smile.gif
Go to the top of the page
+Quote Post
Turson
post 7.02.2014, 11:47:58
Post #17





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Nie pisałem ciągle. Jakieś 5-8h dziennie. Różnie.

Cytat
Natomiast strona wygląda konkretnie od strony funkcjonalnej, a rozumiem, że nie zawdzięczasz tego całkiem sam sobie tylko też temu co ma do zaoferowania framework

I to jest właśnie największy plus frameworków. Nie musisz pisać wszystkiego, o zabezpieczenia nie musisz się martwić, dlatego jest szybciej.
Weźmy na przykład taki panel admina, który jest w tym serwisie. Yii udostępnia Gii, czyli taki swój moduł do generowania kontrolerów, modelów, modułów itd. Poza tym można wygenerować gotowego CRUDa. Wystarczy, że wskażesz model, dla którego ma być. Do tego weźmy np. taką stronę główną, która wyświetla obrazki (gdzie strona=główna). Masz to tego widget, podajesz metodę modelu, która pobiera dane, stylujesz każdy box obrazka i gotowe. Paginacja dodaje się sama. Ileż mniej roboty... smile.gif Potem taka poczekalnia działa tak samo, tylko że podajesz inny warunek (gdzie strona=poczekalnia). "Najlepsze" też tak samo, tylko znowu inny warunek.
Dla porównania mój poprzedni projekt Autorski System Bloga, jaki dawałem tu do oceny pisałem prawie miesiąc. Czemu? 100% strukturalnie
Go to the top of the page
+Quote Post
lukasz1985
post 7.02.2014, 12:58:02
Post #18





Grupa: Zarejestrowani
Postów: 205
Pomógł: 43
Dołączył: 5.03.2012

Ostrzeżenie: (0%)
-----


Czyli ten Yii to bardziej pod Symfony podchodzi, ciekawe czy też jest taki toporny jak SF. Dzięki za informacje. Sam bliżej zapoznam się z tym frameworkiem smile.gif
Go to the top of the page
+Quote Post
Turson
post 7.02.2014, 15:47:38
Post #19





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 6.02.2014, 15:27:11 ) *
Jak chcesz miec estetyke to popraw to wszystko na ladne urle.
I jesli juz podajesz title, to sprawdzaj czy ktos nie wpisal tam czegos innego i jak tak to przekieruj na poprawny adres. Ktos moze sobie kawaly robic.

Update. Title wymagane + ładne urle
Go to the top of the page
+Quote Post
nospor
post 7.02.2014, 15:52:41
Post #20





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://vip1.bdl.pl/turson/obrazki/obrazek/...ryzantema2.html

Mowiac "przeniesc" mialem na mysli by przenioslo na prawidlowy adres z poprawnym tytulem, a nie na strone glowną smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 00:08