![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 30 Dołączył: 1.08.2007 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Witam, pisałem skrypty dla niejakiego Mariusza na tym forum znanego jako zlotownia. Ale po jego ostatnim zachowaniu postanawiam udostpnić skrypt do publicznego użytku i przy okazji do oceny.
Przykładowy model
Jeśli w bazie zmienimy nazwe tabeli to zmieniamy $this->table, jeśli nazwę pola to zmieniamy $this->structure. W zapytaniach podajemy klucz z $this -> structure poprzedzony #(hash). Proszę o ocene oraz komentarze i propozycje zmian. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1) Jaki jest cel istnienia klasy MySQL_Connect? Co ona niby robi?
2) Coś Ci ten singleton nie wyszedł bo powyższy kod zadziała. 3) Jako "klasa do obsługi do bazy" to strasznie słabe to będzie 4) Na moje oko to wysypie się przy pierdole typu: Kod #name='Cro#zin'
Ten post edytował Crozin 29.08.2009, 12:32:01 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Cytat kożysta ja p.....Nie korzystasz ze składni phpdoca do opisywania metod. -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 30 Dołączył: 1.08.2007 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Crozin:
1.Klasa ta zapobiega wielokrotnemu wywołaniu metody mysql_connect() 2. Zmień dostęp do __construct na private 3. Nie jest to klasa do obsługi bazy danych, lecz klasa Abstrakcyjna modelu 4. Masz jakąś propozycje aby temu zapobiec? Masz jakaś propozycja jak |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Crozin: 1.Klasa ta zapobiega wielokrotnemu wywołaniu metody mysql_connect() Właśnie, że nie. Poza tym __construct nie może cokolwiek zwracać. Cytat 3. Nie jest to klasa do obsługi bazy danych, lecz klasa Abstrakcyjna modelu Klasa abstracyjna modelu obsługująca bazę danych. Dlaczego wszyscy myślą, że model to interfejs do obsługi bazy danych? A jak mam dane w plikach? Ten post edytował wookieb 29.08.2009, 13:13:43 -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1) A na jaką cholerę mam wywoływać w ogóle mysql_connect()?
2) Konstruktor to nie wszystko, nadal można tworzyć kolejne instancje przez kopiowanie już istniejących. 3) Tak się zastanawiam po co w ogóle ta klasa. Jeżeli model ma korzystać z bazy danych to niech sobie z jakiegoś kontekstu (czy czegoś) pobierze obiekt i na nim operuje. Modele nie ograniczają się wyłącznie do lokalnej bazy danych... 4) Tak... nie używać czegoś takiego, tylko skorzystać np. z PDO, które przynajmniej da podstawowe bezpieczeństwo oraz nie wysypie się z powodu wewnętrznych błędów. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
1) A na jaką cholerę mam wywoływać w ogóle mysql_connect()? Oj nawet nie wiesz jakie to jest dobre rozwiązanie chociażby w koncepcji Inversion Of Control. -------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 30 Dołączył: 1.08.2007 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Witam, teraz całkiem mi pomieszaliście.
Po kolei, na tym forum wyczytałem, że najlepszym przykładem jest model Agavi.
Ale jak mam tutaj wpisać kod aby był elastyczny, np: Proszę o podanie przykładu jak wkleić kod inicjujący obsługę DB i XML. Mam zrobić 2 klasy(DB, XML), posiadające takie same opcje(select, add, update) czy jak? W przykładowych modelach niema momentu pobierania danych, są już gotowe tablice |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 11:48 |