Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Połączenie do dwóch baz
Chmarus
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 17.09.2009

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


Witam serdecznie. Mam pewien problem z połączeniem do dwóch różnych baz w jednym skrypcie. Posiadam dwie bazy mysql: 1sza jest na potrzeby portalu, a druga jest na potrzeby forum. Na portalu chciałbym wyświetlać 5 ostatnich tematów z forum, które pobieram za pomocą mysql_fetch_array właśnie z tej drugiej bazy (forum). Sam skrypt do wyciągania ostatnich tematów działa doskonale.

Problem pojawia się dopiero po zaincludowaniu pliku w skrypcie portalu (portal zbudowany przy uzyciu php/mysql/smarty) w nagłówku wywala coś takiego:
Cytat
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\portal\class\x.db.class.php on line 100


To pewnie przez to, że includuje plik, który także łączy się z kompletnie inną bazą danych.

Oto kod pliku, który includuje:

  1. <?php
  2. $connection = @mysql_connect('localhost', 'user', 'haslo') or die('Brak połączenia z serwerem MySQL.');
  3. $bazaforum = @mysql_select_db('baza', $connection) or die('Błąd wyboru bazy danych.');
  4. $result = mysql_query("SET NAMES utf8");
  5. $q = mysql_query("SELECT ibf_topics.tid, ibf_topics.title, ibf_topics.posts, ibf_topics.starter_name, ibf_topics.topic_firstpost, ibf_forums.name FROM ibf_topics LEFT JOIN ibf_forums ON ibf_topics.forum_id=ibf_forums.id ORDER BY tid DESC LIMIT 5");
  6.  
  7. while($forum = mysql_fetch_assoc($q)) {
  8. echo "<b>[".$forum['name']."]</b> <a href='http://localhost/forum/topic/".$forum['tid']."-temat/#entry".$forum['topic_firstpost']."'>".$forum['title']."</a> Autor: ".$forum['starter_name']."<br>";
  9. }
  10. ?>


Proszę o pomoc i pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Chmarus
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 17.09.2009

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


Dzięki za szybką odpowiedź. Bazy znajdują się na tym samym serwerze, jednak niestety dane dostępowe są różne i tak już musi pozostać. Zastosowałem się do Twojej rady. Zapytania odpowiedzialne za pobranie ostatnich tematów zostały skierowane do odpowiedniego id połączenia. Jednak całego szkieletu portalu nie ruszałem gdyż jest tam po prostu za dużo różnych połączeń. Na tą chwilę kod wygląda tak:

  1. 1.
  2. <?php
  3. $connection = @mysql_connect('localhost', 'user', 'haslo') or die('Brak połączenia z serwerem MySQL.');
  4. $bazaforum = @mysql_select_db('baza', $connection) or die('Błąd wyboru bazy danych.');
  5. $result = mysql_query("SET NAMES utf8", $connection);
  6. $q = mysql_query("SELECT ibf_topics.tid, ibf_topics.title, ibf_topics.posts, ibf_topics.starter_name, ibf_topics.topic_firstpost, ibf_forums.name FROM ibf_topics LEFT JOIN ibf_forums ON ibf_topics.forum_id=ibf_forums.id ORDER BY tid DESC LIMIT 5", $connection);
  7.  
  8. while($forum = mysql_fetch_assoc($q)) {
  9. echo "<b>[".$forum['name']."]</b> <a href='http://localhost/forum/topic/".$forum['tid']."-temat/#entry".$forum['topic_firstpost']."'>".$forum['title']."</a> Autor: ".$forum['starter_name']."<br>";
  10. }
  11. ?>


I niestety w dalszym ciągu u góry wywala:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\portal\class\x.db.class.php on line 100
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\portal\class\x.db.class.php on line 100

Pomyślałem, że może pomoże zamknięcie tego połączenia zaraz po wyświetleniu tematów w ten sposób:
  1. mysql_close($connection);

Jednak błąd u góry w dalszym ciągu jest widoczny + po wyświetleniu tematów pojawił się nowy:
Cytat
Warning: mysql_close() expects parameter 1 to be resource, null given in C:\wamp\www\portal\tematy.php on line 11


Co zrobić z tym fantem?
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: 12.10.2025 - 06:28