![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 7.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam! Napisałem swój pierwszy pełny skrypt pomijając oczywiście wcześniejsze zabawy w pisanie krótkich kodów php na 50 linijek. Próbowałem stosować się do wszystkich standardów php, html, css.
Skrypt skierowany jest dla posiadaczy domowego kina multimedialnego opartego o program XBMC i posiadanej bazy filmów. Ma on za zadanie parsować pliki xml dostarczone z tegoż programu wraz z grafiką, uporządkować je w bazie danych i wyświetlić ładnie wyglądającą prezentację. Proszę Was o uwagi odnośnie samego skryptu bo to jest dla mnie najważniejsze aby na początku oduczyć się złych nawyków i zdobywać poprawną wiedzę w pisaniu w php. Oczywiście na temat wyglądu uwagi też mile widziane. strona główna: http://regss.sk1.pl/test/index.php strona panelu administratora: http://regss.sk1.pl/test/panel.php hasło do panelu: test Śmiało można usuwać, dodawać, importować. (celowo na potrzeby testów wyłączyłem usuwanie plików po udanym imporcie). A oto kod źródłowy: google code paczka z kodem: ZIP Pozdrawiam. Ten post edytował Regss 29.12.2011, 22:29:16 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nieźle, tylko jak już używasz html5, to używaj tagów jakie daje, a nie pakujesz wszytko w div, umieść też ten kod JS w osobnym pliku.
Jak zmieniasz film, to tło jest ładowane tzn widać to. Zrób to tak, aby było już w cache przeglądarki i pokazywało się jako fade? |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 085 Pomógł: 231 Dołączył: 12.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
1) config.php wygląda jak WYMAGANY plik (w końcu bez configu raczej strona nie pójdzie). Czemu to jest dołączane za pomocą include a nie require?
2) function.php to nie jest dobra nazwa 3) Gdybyś skorzystał z np. Doxygena do komentarzy, to miałbyś już dokumentację projektu. login.php Pierwsze unset jest zbędne.
W bloku login panel dałabym elseif - aktualnie sprawdza isset($_GET['logout']), a potem zawsze sprawdza !isset($_POST['pass']), a podejrzewam, że te dwie rzeczy wykluczają się. config.php Zabrakło mi zmiennej configuracyjnej ustalającej port do bazy. Jasne, można wepchnąć w host, natomiast lepiej IMO byłoby rozdzielić.
If you do not want to have a pagination type 0 - standardowo 0 znosi wszelkie limity
Do not edit anything... Podwójne zaprzeczenie nie istnieje w angielskim (IMG:style_emoticons/default/smile.gif) panel.php Aż się prosi o switch zamiast if. Nie mówiąc już o tym, że chyba bardzo nie lubisz else. Jeśli $_GET['option'] będzie równe del_all, to skrypt zrobi sprawdzenie wszystkiego, mimo że dopasował się do pierwszego warunku. A warunki są rozłączne.
SELECT COUNT(id) mysql_num_rows jest przydatne wtedy, gdy odpalasz normalne zapytanie i dodatkowo chcesz policzyć ile elementów zwróciło; Jeśli zależy Ci tylko na liczbie - COUNT jest bardziej wydajne. index.php
Trzy razy wykona się pobieranie toczka w toczkę tego samego zapytania. Co prawda podejrzewam, że danych w bazie będzie bardzo niewiele, natomiast jest to zły nawyk. Zrób mysql_query raz przed tymi wszystkimi ifami. Zastanawiam się również czy koniecznie potrzebujesz regexpów w zapytaniach:
Gdzie val wydaje się pochodzić z zapytania z tabeli dotyczącej gatunków filmów. Na szybki rzut oka nie ma tam nic dotyczącego konieczności użycia regexpa. Like mysqlowy, mimo że tragicznie wolny jest dużo szybszy od regexpów. To tak ogólnie. Na pierwszy rzut oka. Mam nadzieję, że co nieco Ci się z tego przyda. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 7.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Na początku chciałem podziękować za poświęcony czas i analizę kodu. Na pewno porady bardzo się przydadzą, zabieram się do usprawniania kodu. Po przeanalizowaniu każdej sugestii pozostaje mi zgodzić się ze wszystkimi, muszę podszlifować jeszcze logiczne myślenie. Nawet mały kurs języka angielskiego mi się trafił.
Co do regexp przeczytałem gdzieś, że jest szybszy i dlatego go stosowałem okazuje się jednak, że nie zawsze jest to dobre wyjście. Dlaczego nazwa funcion.php to zły pomysł? !*!, chodzi Ci o to aby wywalić divy tam gdzie to możliwe i stosować same tagi np. <img> i opisywać je w css? Pozdrawiam. Ten post edytował Regss 30.12.2011, 21:07:34 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 006 Pomógł: 111 Dołączył: 23.07.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Dlaczego nazwa funcion.php to zły pomysł? Nie określa do czego służy plik. Już lepiej jakbyś miał np podział na user_function, film_function i w każdym pliku kod odpowiedzialny za wykonywanie operacji na użytkowniku lub filmie. Zmniejszy to też rozmiar ładowanego pliku (lepiej wczytać 1 potrzebny plik o wadze np 3 KB niż 1 o wadze 20 KB zawierającym wszystkie funkcje). Ryzykiem takiego podziału jest nadpisywanie funkcji, więc może lepiej zainteresuj się OOP. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 202 Pomógł: 36 Dołączył: 10.06.2011 Skąd: Dokąd Ostrzeżenie: (0%) ![]() ![]() |
Cytat Do not edit anything... A to nie jest tak, że "Do not edit nothing" byłoby błędne, a "Do not edit anything" jest poprawne? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 7.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
"Do not edit anything" jest poprawnie.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 7.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nie. IMG służy do obrazu i nie jest nowością w HTML5. Resztę tak, wywal div, użyj <header, section, nav i aside>. Opisz i dziedzicz je w CSS. Właśnie spróbowałem, zapomniałem że html5 ma nowe tagi jednak czy nie będzie wtedy problemu ze starszymi przeglądarkami? IE w trybie zgodności robi sieczkę. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 09:30 |