Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytania SQL w obiekcie
frytek92
post
Post #1





Grupa: Zarejestrowani
Postów: 163
Pomógł: 10
Dołączył: 9.11.2007
Skąd: Goleniów

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


Witam mam taki problem, mam baze danych której często robie modernizacje i mój problem polega na tym że przy każdej modernizacji musze skakać po kodzie i zmieniac zapytania SQL, myśle o takim rozwiązaniu ale nie jestem za bardzo do niego przekonany czy jest sens? czy może jest jakaś inna metoda

Przykład :

  1.  
  2. <?php
  3.  
  4. class sql_action extends sql_core {
  5.  
  6. public function ranking_insert($values){
  7.  
  8. if(is_array($values) && isset($values['login'])){
  9.  
  10. $this->query("INSERT INTO `user` (`login`) VALUES ('{$values['login']}')");
  11.  
  12. }
  13.  
  14. }
  15.  
  16. }
  17.  


Pozdrawiam i licze na odpowiedź smile.gif


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
prachwal
post
Post #2





Grupa: Zarejestrowani
Postów: 171
Pomógł: 18
Dołączył: 13.03.2009
Skąd: lublin

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


nie ma to sensu w tym miejscu

http://php.net/manual/en/pdo.prepared-statements.php

a to przy okazji
Go to the top of the page
+Quote Post
Zyx
post
Post #3





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


Niestety, jeśli robisz częste modernizacje, to skakania po kodzie nie unikniesz. Równie dobrze mógłbyś pytać, co zrobić by uniknąć przebudowy budynku, bo często zdarza Ci się demontować ściany nośne. Co najwyżej możesz dążyć do minimalizowania liczby miejsc, w których coś trzeba zmienić, a można to osiągnąć po prostu poprzez odpowiednią organizację kodu tak, by rzeczy związanie np. z X były w jednym miejscu, z Y - w drugim itd. W ten sposób nawet jeśli jakaś operacja będzie wykonywana w różnych miejscach, jej implementacja będzie jedna i trzeba będzie zmienić tylko ją.

PS. class sql_action extends sql_core - litości, człowieku, zastanów się przez chwilę nad tym, po czym dziedziczysz... Akcje po systemie komunikacji z bazą danych? Przecież to nie ma żadnego sensu!



--------------------
Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0
Go to the top of the page
+Quote Post
Pilsener
post
Post #4





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Jak sobie kod organizujesz, tak potem się stresujesz. Logika modeli w wypadku bazy jest dość oczywista: jedna tabela = jeden model. Model nazywa się tak jak tabela w bazie i ma taką też lokalizację w folderze /models. Przykład: masz tabelę page_comments, plik comments.php znajduje się w folderze /models/page a nazwa klasy to model_page_comments. Nazwy metod także powinny podlegać pewnym standardom. W ten sposób ładnie nam się rozwija lista klas (a po wybraniu klasy metod) w przeglądarce obiektów, po wpisaniu "new model_" lista modeli, po "new model_p" lista modeli zaczynających się na "p", niczego nie trzeba szukać i do wszystkiego łatwy dostęp.
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: 21.08.2025 - 03:36