Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> dwie bazy MySql i zapytania
WMP
post
Post #1





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 23.01.2006
Skąd: Lublin

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


Witam, chiałbym żeby zapytanie db było wysyłane do wóch baz($db i $db2)
oto przyładowe zapytanie
  1. <?php
  2. $db -> Execute("UPDATE players SET credits=credits-".$cost." WHERE id=".$player -> id);
  3. ?>


Oczywiście nie chodiz mi o to żeby kopiowac je dógi raz tylko że z $db2 tylko zeby zorbić jakoś aby w jednej lini wysyłało to zapytanie do obu baz
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ennics
post
Post #2





Grupa: Zarejestrowani
Postów: 312
Pomógł: 0
Dołączył: 29.12.2004

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


nooo stary to już jest prawie praca oferowana (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) nie bardzo rozumiem na czym polega działanie Twojego skryptu. Zaprojektowanie klasy do obsługi trzech uchwytów do bazy (trzech instancji klas) wymaga trochę czasu i wysiłku.
Zamiast na tabelach może skoncentruj się na samych zapytaniach, bo przecież nie używasz tych samych zapytań do zapisu/odczytu ze wszystkich baz.
Mogę Cię naprowadzić ale nic więcej (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
  1. <?php
  2.  
  3. class query_factory {
  4.   private $db1;
  5.   private $db2;
  6.   private $db3;
  7.  
  8.   public function __construct() {
  9.     if(!$this->db1) {
  10.       $this->db1 = new Biblioteka_do_bazy_danych1();
  11.     }
  12.     if(!$this->db2) {
  13.       $this->db2 = new Biblioteka_do_bazy_danych2();
  14.     }
  15.     if(!$this->db3) {
  16.       $this->db3 = new Biblioteka_do_bazy_danych3();
  17.     }
  18.   }
  19.   private function query_f1() {
  20.     $data= $this->db1->execute("SELECT alchemy_mill, bad_words, bows, bridge, bugtrack ... updates,
  21. warehouse FROM tabela1 WHERE ...");
  22.     $res = $data->fetch_assoc();
  23.     return $res;
  24.   }
  25.   private function query_f2() {
  26.      $data= $this->db2->execute("SELECT aadodb_logsql, aktywacja, ban, chat,  FROM tabela2 WHERE ...");
  27.      $res = $data->fetch_assoc();
  28.      return $res;
  29.   }
  30.   public function run() {
  31.     $data_form_db1 = $this->query_f1();
  32.     $data_form_db2 = $this->query_f2();
  33.     $synergy[1] = $data_form_db1;
  34.     $synergy[2] = $data_form_db2;
  35.     $return $synergy;
  36.   }
  37. }
  38. $db = new query_factory();
  39. $wszystko = $db->run($query); 
  40. // matoda foo::run zwraca dane z obu tabel umieszczone w tablicy $synergy
  41.  
  42. ?>

psiałem z palca, może coś nie grać (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
PS. jeśli nie miałeś wcześniej do czynienia z klasami możesz poszukać prostszych (proceduralnych) rozwiązań, albo (i to jest lepsze wyjście) zacznij poznawać OOP http://pl2.php.net/manual/pl/language.oop.php

Ten post edytował ennics 23.01.2006, 20:22:54
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.10.2025 - 13:24