Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/04/2007, 02:09
JGarciaQ
 
Fecha de Ingreso: abril-2007
Mensajes: 11
Antigüedad: 17 años
Puntos: 0
Error al hacer consultas a bases de datos distintas

Hola a todos, tengo un problema.

Como servidor de la base de datos tengo MySQL.

Tengo 2 bases de datos Prueba1 y Prueba2

En PHP me he definido 3 archivos.

ARCHIVO INDEX.PHP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title></title>
</head>
<body>
<font size="+2">

<?PHP
require_once("conexion.php");
/*Base de Datos Prueba1*/
$consulta1="SELECT nombre FROM acreedores";
$resultado_consulta=mysql_query($consulta1);
$fila=mysql_fetch_object($resultado_consulta);
echo $fila->nombre;

Como veis la consulta2 es para la base de datos Prueba2, la unica solucion que he encontrado para que me funcione es poner mysql_select_db(Prueba2) en el archivo Index.php. Pero preferiria hacerlo en el archivo CONEXION (lo he hecho y no me va) QUE PUEDO HACER??? POR QUE ME ESTA FALLANDO?

$bd2="invhardware";
mysql_select_db($bd2);
/*PARA LA BASE DE DATOS Prueba2*/
$consulta2="SELECT nombre FROM usuarios";
$resultado_consulta2=mysql_query($consulta2);


$fila2=mysql_fetch_object($resultado_consulta2);
echo $fila2->nombre;


?>
</body>
</html>


El segundo archivo es el que tengo en el require, que es CONEXION. Dicho archivo contiene esto

<?PHP
require_once("../BIBLIOTECA/fx_mysql.php");
$server="localhost";
$bd="pruebas1";
$usr="root";
$pwd="1234";
$con1=db_connect_mysql($server,$bd,$usr,$pwd);
Aqui me gustaria hacer el mysql_select_db(prueba2) PERO NO FUNCIONA.
He probado tambien poner esto
/*
$bd2="Prueba2";
$mysql_select_db($db2); FALLA
*/
/*
$bd2="Prueba2";
$con2=db_connect_mysql($server,$bd,$usr,$pwd) FALLA
y luego al hacer la consulta poner mysql_query($consulta,$con2);
*/

?>


La BIBLIOTECA es esta
<?PHP
function db_connect_mysql($server,$bd,$usr,$pwd)
{
$result = mysql_connect($server, $usr, $pwd);
if(!$result)
exit("fallo al conectarse");
if (!mysql_select_db($bd))
return ("fallo al seleccionar la BD");

return $result;
}
?>