Foros del Web » Programando para Internet » PHP »

abrir 2 bases a la misma vez

Estas en el tema de abrir 2 bases a la misma vez en el foro de PHP en Foros del Web. Hola, como puedo hacer para abrir dos bases de datos (mysql) a la misma vez, ya que tengo una bd llamada usuarios con tablas de ...
  #1 (permalink)  
Antiguo 05/05/2010, 12:41
 
Fecha de Ingreso: febrero-2002
Mensajes: 49
Antigüedad: 22 años, 9 meses
Puntos: 0
abrir 2 bases a la misma vez

Hola, como puedo hacer para abrir dos bases de datos (mysql) a la misma vez, ya que tengo una bd llamada usuarios con tablas de datos de usuario, perfil, etc y otra bd con tablas de la aplicacion.

Al mostrar los registros de la aplicacion mediante un while, donde tengo el id del usuario, quiero mostrar los datos del usuario que ingreso estos registros, pero cuando abro una base, me cierra la otra.

Alguna idea?

Gracias
__________________
Sebcun
  #2 (permalink)  
Antiguo 05/05/2010, 12:44
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: abrir 2 bases a la misma vez

Código PHP:
Ver original
  1. $conexion1 = mysql_connect(/** **/);
  2. $conexion2 = mysql_connect(/** **/);

?
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 05/05/2010, 14:39
 
Fecha de Ingreso: febrero-2002
Mensajes: 49
Antigüedad: 22 años, 9 meses
Puntos: 0
Respuesta: abrir 2 bases a la misma vez

Sabes que el problema es que cuando abro las dos bases no me da error, el problema es que cuando quiero ejecutar una consulta a usuarios (1base) me sale el siguiente error: "Table 'registro.usuarios' doesn't exist" - la tabla usuarios. es de la base usuarios, registro es la segunda base.
Creo que tiene que ver con el id de conexion que para cualquier conexion es el mismo.
Abajo dejo el código de como estoy haciendo

$con_usuarios = mysql_connect($sql_host,$sql_usuario,$sql_pass)or die ('Ha fallado la conexión: '.mysql_error());
$conexion = mysql_connect($sql_host,$sql_usuario,$sql_pass)or die ('Ha fallado la conexión: '.mysql_error());


if (!mysql_select_db($sql_db_us, $con_usuarios)) {
echo 'No pudo seleccionar la base de datos usuarios<br>';
}
if (!mysql_select_db($sql_db, $conexion)) {
echo 'No pudo seleccionar la base de datos de registros<br>';
}

$usuarios_listar = "SELECT * FROM usuarios";
$result_us = mysql_query($usuarios_listar , $con_usuarios) or die ( mysql_error() );
__________________
Sebcun
  #4 (permalink)  
Antiguo 05/05/2010, 16:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: abrir 2 bases a la misma vez

El problema es que estas usando los mismos parámetros para conectarte, en ese caso para poder separarlas, lo que debes de hacer es suministrar el 4to parámetro para mysql_connect, como true para que genera diferentes identificadores.

Saludos.
  #5 (permalink)  
Antiguo 06/05/2010, 09:24
 
Fecha de Ingreso: febrero-2002
Mensajes: 49
Antigüedad: 22 años, 9 meses
Puntos: 0
Respuesta: abrir 2 bases a la misma vez

GatorV, funcionó perfecto. puse el true y se solucionó. El problema es que ahora me engolociné, y quiero hacer una consulta combinada a las tablas de las dos bases de datos, evitando de esta forma hacer un loop de una bd dentro de otro loop de otra bd.

El query sería así:
$_pagi_sql = "SELECT a.id, a.description, a.ruta, a.size, a.tipo, u.nombre FROM usuarios.usuarios as u, registro.archivos as a WHERE u.id = a.usuario";

$_pagi_result = mysql_query($_pagi_sql , $con_usuarios) or die ( mysql_error() );

El problema es como hago para que el mysql_query ejecute $con_usuarios y $conexion que si ven arriba son las conexiones a las dos bases.
Se entendió
__________________
Sebcun
  #6 (permalink)  
Antiguo 06/05/2010, 10:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: abrir 2 bases a la misma vez

Si estan en el mismo servidor de base de datos, con que uses la forma de bd.tabla es suficiente, obviamente no te va a servir si estan en diferentes servidores, no puedes mezclar los querys de esa forma.

Saludos.
  #7 (permalink)  
Antiguo 06/05/2010, 10:21
 
Fecha de Ingreso: febrero-2002
Mensajes: 49
Antigüedad: 22 años, 9 meses
Puntos: 0
Respuesta: abrir 2 bases a la misma vez

GatovV, funcionó. Mil gracias.
__________________
Sebcun

Etiquetas: bases
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:52.