Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/01/2009, 06:28
DUENDEGRANADA
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 3 meses
Puntos: 0
De acuerdo Cómo conectar con dos bases de datos sql server con php

Hola a todos/as:

He desarrollado una aplicación con PHP y SQL SERVER en la que necesito acceder a dos Bases de Datos.

Hago la conexión con las dos bases de Datos:

function conecta()
{
global $nombre_bd;
global $variable_user_bd;
global $variable_password_bd;
global $variable_host_bd;

$db=mssql_connect($variable_host_bd,$variable_user _bd,$variable_password_bd);
mssql_select_db($nombre_bd,$db);
return $db;
}


function conecta_terceros()
{
global $nombre_bd_terceros;
global $variable_user_bd_terceros;
global $variable_password_bd_terceros;
global $variable_host_bd_terceros;

$db_terceros=mssql_connect($variable_host_bd_terce ros,$variable_user_bd_terceros,$variable_password_ bd_terceros);
mssql_select_db($nombre_bd_terceros,$db_terceros);
return $db_terceros;
}


y hasta ahí todo correcto.

El problema es que sólo actua la conexión que se pone en segundo lugar (lo he probado invirtiendo el orden).

Respecto a las sentencias SQL, las hago haciendo uso de la conexión correspondiente, por ejemplo:

$sql="select provincia from provincias where num_provincia='$num_provincia'";
$res=mssql_query($sql,$db_terceros);
while ($reg=mssql_fetch_array($res))
{
$provincia=$reg['provincia'];
}

$sql="select num_fichatecnica from $name_tabla where num_fichatecnica_md5='$num_objeto_md5'";
$res=mssql_query($sql,$db);
while ($reg=mssql_fetch_array($res))
{
$num_fichatecnica=$reg['num_fichatecnica'];
}


pero la primera consulta da error ya que hace referencia a la primera conexión con la Base de Datos y la que está activa es la segunda.

En fin, la verdad es que he buscado una respuesta y he hecho mil pruebas y ahora mismo estoy bloqueado y necesito que esto funcione. Y SE QUE SE PUEDE HACER.... He encontrado la solución para MySQL, ¿Es que no se puede hacer con SQL SERVER?... SEGURO QUE SI SE PUEDE.

A ver si alguien me puede ayudar.

MUCHAS GRACIAS