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