![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 385 Pomógł: 48 Dołączył: 23.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Pisze kod strony w którym chcę wykorzystać mysqli oop i chcę żeby to wszystko miało swój początek i koniec żeby było dobrze zrobione. Do tej pory mam to:
klasa
przykładowy index.php
I teraz pytanie czy to jest optymalnie i dobrze napisane. Tak żeby przy dodawani dodatkowych stron nie było problemu. I jeszcze jak mam kto który wyświetla informacje na stronie głównej:
Jak zrobić żeby po wywołaniu $db->glowna(); wyświetliło nagłówek który pobrałem w tej funkcji tam gdzie chcę (wrzucić go do zmiennej) Żeby to przy wybraniu innej strony pobrało inne dane. Czy każdy dział w innym pliku zrobić? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 233 Pomógł: 9 Dołączył: 3.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
1. lepiej od razu rzuć okiem na PDO zamiast mysqli
2. to co napisałeś jest tylko pozamykane w klasach, a koło oop nawet nie stało 3. optymalizacją zajmujemy się dopiero gdy kod działa... 4. pomijam takie chochliki jak __dectruct, ten switch też wydaję się co najmniej twórczy Jaka rada z mojej strony? przeczytaj na czym polega programowanie obiektowe, a potem jak działa wzorzec MVC (wydaję mi się że dobry do tego będzie askeet i jego tworzenie w symfony, aczkolwiek to nie jest chyba łatwa droga bo jest sporo do ogarnięcia) i naturalnie próbuj zrozumieć, potem przeczytaj to jeszcze raz, potem jeszcze raz..., generalnie zrozumienie idei obiektowości przynajmniej dla mnie było sporym problemem i raczej nie da się tego po prostu wyczytać... trzeba zobaczyć kod i się nim pobawić stąd moja propozycja z symfony |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 385 Pomógł: 48 Dołączył: 23.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
ok dzięki za wskazówki
zrobiłem takie coś: index.php
klasa
dobrze? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Przede wszystkim nie jest dobrym pomysłem zamykanie w jednej klasie mysql funkcjonalności ogólnych jakimi są wykonywanie zapytań do bazy danych i jednoczeście funkcjonalności specyficznych czyli w tym wypadku wybieranie konkretnej strony w projekcie. Zastanów się do czego ma służyć klasa mysql. OOP to nie tylko pakowanie funkcji w klasy.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 385 Pomógł: 48 Dołączył: 23.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
ok, to zrobię tak klasa mysql to łączenia z bazą i zapytania do bazy a inna klasa do wyświetlania wyników
? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 426 Pomógł: 32 Dołączył: 24.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Na tym polega oop, żeby jedna klasa odpowiadała za pewne elementy a inna za inne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Ogólnie klase mysql wykorzystaj tylko do zapytan do bazy i zwracania wynikow: query,getResults,numResults, itd... zZbuduj klasę Page do obsługi stron. Najlepiej jeszcze podziel jakoś strukturę tak żeby nie wykonywać zapytań do bazy w szablonie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) poczytaj o MVC
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
nie używaj zmiennych superglobalnych w metodach bóg dał parametry metod / funkcji zeby z nich kożystać. Cytat ok, to zrobię tak klasa mysql to łączenia z bazą i zapytania do bazy a inna klasa do wyświetlania wyników ? MVC Ten post edytował skowron-line 12.03.2009, 11:30:22 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 385 Pomógł: 48 Dołączył: 23.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
ok
ale tego nie rozumiem Cytat nie używaj zmiennych superglobalnych w metodach bóg dał parametry metod / funkcji zeby z nich kożystać.
|
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Poszukaj sobie np. o singletonie, referencjach, itp.
A tak najogólniej - o programowaniu obiektowym. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.09.2025 - 03:18 |