Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Klasa MySql, co i jak, aby bylo sprawnie i dobrze :)
Daimos
post
Post #1





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Witam, zabieram sie wlasnie za robienie swojej klasy do komunikacji z baza MySql
mam pytanie, jak waszym zdaniem najlepiej zastapic zapytania typu INSERT UPDATE DELETE
myslalem nad takim rozwiazaniem, z zastosowaniem tablic asocjacyjnych
  1. <?php
  2. $sql -> mysql_update(array('pole1'=>'wartoscdopola1',.....), array('id'=>'2'));
  3. // zmienialo by to pole1 w wierszu gdzie id = 2
  4. ?>

chodzi o ogolnie o pomysl z zastosowaniem tych tablic
pierwsza tablica to np. wlasnie pola i wartosci, drugie to parametry WHERE
myslicie ze to jest dobre rozwiazanie?


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
LBO
post
Post #2





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


Szczerze już bardziej wolę adaptery typu PDO albo MySQLi, czyli przygotowywanie zapytań i bindowanie parametrów.

Po za tym, klasa Zend_DB_Select (z Zend Frameworka) jest na pewno powiązana z tym czego szukasz.

Ten post edytował LBO 7.04.2007, 21:56:59
Go to the top of the page
+Quote Post
Daimos
post
Post #3





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


przyznam ze nie znam klasy zend_db_select
ale ja nie szukam gotowca, szukam "rady" smile.gif
chce po prostu napisac swoja klase w miare potezna (jak na moje mozliwosci) i mysle nad tym, czy ten sposob ktory przedstawilem, bylby dobrym rozwiazaniem

Ten post edytował my salsa 7.04.2007, 22:00:48


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
Sedziwoj
post
Post #4





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


Czy poznanie oznacza od razu używanie?
To jest raczej typowe, że patrzysz jak dany problem rozwiązują inni i 'podkradasz' pomysły.
A do tego piszesz to w dziale obiektowego programowania, więc jednak używanie tablic nie jest najlepsze.
Proponowane jest stworzenie obiektu który odwzorowuje w pewien sposób dane które są pobierane/zapisywane w bazie danych.


--------------------
Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami.
Go to the top of the page
+Quote Post
Athlan
post
Post #5





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Ja to mam tak:

  1. <?php
  2. $oDb->param = value;
  3. $oDb->param = value;
  4. $oDb->param = value;
  5. $oDb->param = value;
  6.  
  7. $oDb->setWhere('pole = wartosc');
  8. $oDb->dbUpdate('tabelka'); // lub $oDb->dbInsert('tabelka');
  9. ?>


Skrobałem kiedyś i powiem, że nadal używam bo jest i wygodne, i wydajne. Ma trochę okrojone możliwości, gdyż stoi na tym już baaaardzo dużo aplikacji i zdobyłem w miarę doświadczenia, aby się przekonać. Nie mogę na przykład dodać do where takiego czegos:

$oDb->addWhere('...');
// troche kodu, jakis waruneczek
$oDb->addWhere('...');

Więc jak będziesz pisał swoją klasę to pamiętaj o maksymalnej elastyczności.

Jeżeli chcesz popatrzeć:
Abstrakcyjna:
http://framework.vgroup.pl/expose-e8d3d22f...c1c9b5cf7e2.htm
MySQL:
http://framework.vgroup.pl/expose-4f9a2516...fa7de89f464.htm

Ale tak jak mówi LBO, PDO ma już swój mechanizm i warto go zastosować smile.gif

Pozdrawiam smile.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
Sedziwoj
post
Post #6





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


Tak patrzyłem, i stwierdziłem że dziwnie wzorzec singleton'a zaimplementowałeś. Można też by było __sleep i __wakeup oraz __clone nadpisać.

EDIT:
poprawiłem budowę zdania

a raczej błędnie wzorzec singletona, bo pole $_rConnection powinno być static. Inaczej reguła z konstruktora jest bez sensu...

Ten post edytował Sedziwoj 8.04.2007, 13:14:21


--------------------
Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami.
Go to the top of the page
+Quote Post

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 Aktualny czas: 20.08.2025 - 23:23