Ho una pagina php che preleva alcune informazioni da un db mysql (che chiamo genericamente X).
Mantenendo attiva la connessione al database X, voglio collegarmi ad un altro db Y, per prelevare altre informazioni (provenienti da un blog wordpress).
Se visualizzo la pagina solo con la prima connessione, tutto funziona perfettamente.
Quando attivo la seconda connessione, mi visualizza correttamente i dati, ma compare anche il seguente errore:
"Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'"
Vi faccio un piccolo esempio di quello che voglio ottenere:
Codice PHP:
<?php
// Informazioni database X
$dbhost = "...";
$user="...";
$pass="...";
$dbname="...";
// Informazioni database Y
$dbhost2 = "...";
$user2="...";
$pass2="...";
$dbname2="...";
// Connessione a X
$link = mysql_connect($dbhost, $user, $pass);
$db = mysql_select_db($dbname);
// Visualizzo alcuni dati da X, con una query X1
$resultX1 = mysql_query("SELECT * FROM table");
if (mysql_num_rows($resultX1) != 0) {
while($data = mysql_fetch_assoc($resultX1))
echo "....";
}
// A questo punto voglio collegarmi al db Y... la connessione a X non è ancora stata chiusa
$link2 = mysql_connect($dbhost2, $user2, $pass2);
$db2 = mysql_select_db($dbname2, $link2);
// Visualizzo alcuni dati da Y, con una query Y1 e chiudo subito il db Y
$resultY1 = mysql_query("SELECT * FROM table");
if (mysql_num_rows($resultY1) != 0) {
while($data2 = mysql_fetch_assoc($resultY1))
echo "....";
}
mysql_close($link2);
// Visualizzo nuovamente alcuni dati di X.. con un'altra query X2
$resultX2 = mysql_query("SELECT * FROM user");
if (mysql_num_rows($result) != 0) {
while($data2 = mysql_fetch_assoc($result2))
echo "....";
}
// Ora chiudo la connessione a X
mysql_close($link);
?>