PHP - Consulta a Otro servidor

 
Vista:
sin imagen de perfil

Consulta a Otro servidor

Publicado por Joseph (7 intervenciones) el 11/01/2017 21:08:52
hola como estan gracias por responder de antemano me explico
Tengo un servidor con ip 198.x.x.x en ubuntu aqui tengo una pagina web
Tengo otro servidor con ip 216.x.x.x en windows server el cual tiene una base de datos en sqlserver

Lo que quiero realizar es que la pagina web del servidor 1 en ubuntu haga consultas a la base de datos en el servidor 2 de windows por medio de php

les adjunto la imagen de la terminal de mi consola en ubuntu donde puedo conectarme al servidor de windows

linux

Me explico de nuevo desde consola ya puedo hacer consultas pero por medio de php no puedo tengo el siguiente codigo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
//Conexion
$usuario= 'user;
$pass = 'xxxxxxxxx';
$servidor = '10.10.10.10';
$basedatos = 'mibase';
$info = array('Database'=>$basedatos, 'UID'=>$usuario, 'PWD'=>$pass);
$conexion = sqlsrv_connect($servidor, $info);  
//Verfica Conexión
if($conexion){
	echo "Conectado<br>";
}else{
	echo 'No se Conecto';
die( print_r( sqlsrv_errors(), true));
}
//Consulta Conteo Clientes
$sql = "SELECT * FROM Cliente" ;
$params = array();
$options = array( "Scrollable" => SQLSRV_CURSOR_KEYSET );
$stmt = sqlsrv_query ( $conexion , $sql , $params , $options );

$row_count = sqlsrv_num_rows ( $stmt );
echo 'Total: '.$row_count ;
?>
no hace nada se ve en blanco

hice este codigo desde una tercera computadora que es windows 7 esta fuera de ambos servidores y si lo realiza pero dentro del servidor en ubuntu no lo hace

espero haberme explicado
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Consulta a Otro servidor

Publicado por Carlos Cataldo (6 intervenciones) el 12/01/2017 00:45:36
Estimado Joseph.
Yo también en algún momento me enfrenté a generar una aplicación web en Debian con una base de datos SQL Server. Mi solución pasó por UnixODBC y FreeTDS.
Te adjunto un link de instalación en ubuntu.
http://www.lapipaplena.net/conectar-a-servidor-microsoft-sql-server-desde-ubuntu-con-php-y-apache/
Si no te funciona el código de conexión. Utiliza PHP ODBC.
http://php.net/manual/es/book.uodbc.php
Espero haber ayudado.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consulta a Otro servidor

Publicado por Joseph (7 intervenciones) el 12/01/2017 01:01:09
Hola gracias por responder el primer link ya lo cheque mil veces y no conecta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta a Otro servidor

Publicado por Carlos Cataldo (6 intervenciones) el 12/01/2017 01:30:20
Joseph.
Si tienes configurado correctamente FreeTDS y UnixODBC, este código debiera funcionar:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
# connect to a DSN "nombre_servidorBD"
$connect = odbc_connect("nombre_servidorBD", "usuario", "password");
 
# query 
$query = "SELECT Value, DateTime = convert(nvarchar ,DateTime, 108), TagName FROM History WHERE TagName IN ('P_215_LIT_1') AND wwRetrievalMode = 'Cyclic' AND wwResolution = 120000 AND Value IS NOT NULL ORDER BY DateTime ASC";
 
# Ejecutar query
$result = odbc_exec($connect, $query);
 
# Recuperar los datos de la base de datos
while($row = odbc_fetch_array($result)) {
echo $row['DateTime'] . "/" . $row['Value']. "/";
}
 
# cierra conexión
odbc_close($connect);
 
?>
Nombre DSN es el mismo configurado en archivo de configuración FreeTDS
Cambia los datos de conexión y la query.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consulta a Otro servidor

Publicado por Joseph (7 intervenciones) el 13/01/2017 01:31:29
Hola active los errore spara php y me sale el siguinte

mssql_connect(): Unable to connect to server
tambien sale

Fatal error: Call to undefined function sqlsrv_connect() in /home/productuploads/public_html/admin/database_migration.php on line 8
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta a Otro servidor

Publicado por Carlos Cataldo (6 intervenciones) el 13/01/2017 04:57:27
Joseph.
El código que te di está probado. Utilizalo cambiando lo necesario a tus necesidades.
Si te sigue dando error postea tu freetds.conf y tú odbc.ini
Tuve muchos problemas con SQL server desde Linux y lo solucione usando PHP ODBC.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta a Otro servidor

Publicado por samba (3 intervenciones) el 13/01/2017 05:31:26
amigo, te recomiendo que quites los datos de pass y usuario del codigo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar