Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Podłączenie 2 baz mysql pod 1 skrypt.
Forum PHP.pl > Forum > Przedszkole
vifus
Witam, mam pewien skrypt, który jest podłączony pod bazę localhosta itd. i ten skrypt includuje do pliku index plik config.php(dla połączenia z bazą) i test.php a plik test php musi dodać dane do zdalnej bazy danych, której dane są wypełnione w pliku: zdalny_config.php. Gdy zaincluduje zdalny_config.php do pliku test.php to te 2 połączenia ze sobą kolidują - da się to jakoś rozwiązać ?

Dzięki z góry!
maniana
Oczywiście, że się da. Jak się łączysz to dostajesz unikalnego 'linka' do niej i własnie na nim operujesz... Proponuje przerzucić się na Mysqli Operujesz na obiektach, które są 'bardziej przyjazne' :)

Jednak baza danych zewnętrzna (np. w Irlandii) może odmówić połączeń przychodzących z zewnątrz.
vifus
hmm, obydwie bazy są w Polsce, ale i tak nie chce ruszyć :/



Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/aronzuk/public_html/xxx.php on line 84


@UP.


Zrobiłem coś takiego plik zdalnabaza.php a w nim:

  1.  
  2. <?php
  3.  
  4. $con1 = @mysql_connect("$admin[bans_host], $admin[bans_user], $admin[bans_user], true");
  5.  
  6. ?>
  7.  


Następnie includuje plik zdalnabaza.php do pliku głównego i w tym momencie, gdy potrzebuje połączyć się z inną bazą robie coś takiego:

  1.  
  2. @mysql_select_db("$admin[bans_table]", $con1);
  3.  
  4. $sprwbansie = mysql_fetch_array(mysql_query("SELECT * FROM amx_amxadmins WHERE `id`='$user[kupione]' AND `waznosc`='$wazn' LIMIT 1"));
  5.  
  6. mysql_close($con1);
  7.  


I błędy:









Warning: mysql_select_db() expects parameter 2 to be resource, boolean given in xxx.php on line 89

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in xxx.php on line 91

Warning: mysql_close() expects parameter 1 to be resource, boolean given in xxx.php on line 96

mls
OMFG.

Polecam najpierw zapoznać się z podstawami:
mysql_connect
oraz
mysql_select_db

Po drugie - co to za zapis:
Kod
"$admin[bans_table]"

i czemu ma on służyć? Podobnie jak używanie @...
Nienajlepiej jest uczyć się od razu złych nawyków...
vifus
'$admin[bans_table]' -> już jest tak. itd. - zmienna pobrana z bazy, która przechowuje dane do zdalnej bazy.. co do małpy to masz rację - głupi nawyk, o tej metodzie, którą zastosowałem przeczytałem na jakimś blogu i przecież jest niemal identycznie jak w manualu, o co chodzi ? Albo Ty nie zrozumiałeś mnie albo ja nie rozumiem Ciebie..
mls
Zmienna powinna być zapisana tak:
$admin['bans_table']
I nie inaczej. Bez obejmowania jej w cudzysłów czy apostrofy. Nie wiem kto takich idiotycznych sposobów zapisu uczy...

A co do łączenia się z serwerem MySQL jak i wyborem bazy - naprawdę, przeczytaj jeszcze kilka razy dokumentację na php.net. Bo to co napisałeś nijak się ma do tego jak jest w manualu (i jak jest poprawnie).
vifus
Ludzie.. nie mogę tego chyba zrozumieć..

  1.  
  2. $con1=mysql_connect('localhost','x','x);
  3.  
  4. if (!$con1) {
  5. die('Nie można się połaczyć: ' . mysql_error());
  6. }
  7.  
  8.  
  9. $ida = mysql_fetch_array(mysql_query("SELECT * FROM forum.amx_amxadmins WHERE `password`='$hasl' AND `nickname`='$nic' LIMIT 1"));
  10.  
  11. $idadm=$ida['id'];
  12.  
  13.  
  14. mysql_query("INSERT INTO `amx_admins_servers` (`admin_id`, `server_id`, `custom_flags`, `use_static_bantime`) VALUES ('$idadm', '$serw', '', 'no')");
  15.  
  16. mysql_close($con1);




Już zrezygnowałem dla testów do pobierania danych zdalnej bazy z bazy ...(bossh) i wpisałem je ręcznie. Błędów niby nie ma, ale nie bardzo mam jak teraz to sprawdzić - możesz zobaczyć czy mniej więcej o to chodziło i czy te 2 połączenie nie będą kolidowały ze sobą ?

Główne połączenie mam na sesji więc nie powinno, ale:

  1.  
  2. <?php session_start();
  3. mysql_connect("localhost","x","x") or die(mysql_error()."Nie mozna polaczyc sie z baza danych. Prosze chwile odczekac i sprobowac ponownie.");
  4. mysql_select_db("aronzuk_forum") or die(mysql_error()."Nie mozna wybrac bazy danych.");
  5. ?>


I ten plik jest includowany na samym początku skryptu..



PS. Dzięki za fatyge..



@@

Jednak nie działa - czytam tego manuala 5raz i nadal nie wiem, co mogę mieć nie tak! :/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.