Conectar PHP con SQL Server desde CentOS 6.5

Este mes tuve un nuevo requerimiento de un cliente. Tenemos lo siguiente: • 01 pc con windows 7 y sql server 2012 • 01 servidor Centos con Apache y PHP5.4 Necesitamos obtener una lista de pacientes de la base de datos en sqlserver y mostrarla en una aplicación web que esta alojado en Centos.

Buscando en san google, links por aquí, por allá y luego de varios quebraderos de cabeza la solución se resume en un post muy bueno que encontré:

http://scriptinside.blogspot.com.es/2013/04/error-unable-to-connect-to-server.html

Instalar en este orden:

> yum update
> yum groupinstall Development Tools
> yum install httpd
> yum install freetds
> yum install freetds-devel
> yum install php php-devel php-mssql
> service httpd restart
> php -m (verifico que módulos tiene instalado el php, alli debe figurar php-mssql)
> vi /etc/freetds.conf

añadimos una conexión personalizada

#mi conexion sqlserver
[sqlserver2012]
host = IP de destino
port = 1433
tds version = 8.0

grabamos y salimos. probamos la conexión

> tsql -S sqlserver2012 -p 1433 -U sa

si hay problemas como este:

Error 20009 (severity 9): Unable to connect: Adaptive Server is unavailable or does not exist OS error 110, Connection timed out

Este es el error típico de que el firewall del servidor SQL no está permitiendo las conexiones entrantes.

Error 20009 (severity 9): Unable to connect: Adaptive Server is unavailable or does not exist OS error 111, Connection refused

Este error significa que te estas conectando mal al servidor SQL, por ejemplo puedes estar conectandote por IP (tsql -H) con los datos por defecto en vez de conectarte utilizando tsql –S.

tener en cuenta que este deshabilitado el firewall de windows, si todo va bien creamos el php de prueba

<?php

$msconnect=mssql_connect("sqlserver2012","sa","clave");
$msdb=mssql_select_db("nombrebd",$msconnect);
$msquery = "select titleofcourtesy,firstname,lastname from employees";
$msresults= mssql_query($msquery);
while ($row = mssql_fetch_array($msresults)) {
echo $row['titleofcourtesy'];
}

?>

sqlserver2012: es el nombre de la conexión en freetds.conf

Comentarios

1. El Jueves, Abril 19 2018, 17:36 por pnc speedpay

Hi, Neat post. There's an issue with your web site in web explorer,
would check this? IE nonetheless is the market
chief and a good section of other folks will leave out
your excellent writing because of this problem.

2. El Lunes, Agosto 27 2018, 09:54 por look at here

Excellent beat ! I would like to apprentice while you
amend your website, how could i subscribe for a blog website?
The account aided me a acceptable deal. I had been a little bit acquainted of this your
broadcast provided bright clear idea

3. El Miércoles, Septiembre 12 2018, 06:32 por vb centella

Attractive section of content. I just stumbled upon your website
and in accession capital to assert that I acquire in fact enjoyed account your blog posts.
Any way I will be subscribing to your augment and even I achievement you access consistently fast.

4. El Sábado, Septiembre 22 2018, 18:16 por vitabrain

Very great post. I simply stumbled upon your weblog and
wanted to mention that I've really enjoyed surfing around your
blog posts. In any case I will be subscribing for your rss feed and I'm hoping you write
again soon!

Añadir un comentario

El código HTML se muestra como texto y las direcciones web se transforman automáticamente.

Discusiones sobre el mismo tema

URL de retroenlace : http://creativapixel.com/blog/index.php?trackback/4

1201 reads