image
Inicio » PHP » Artículos sobre PHP » Conexión a SQL Server




Conexión a SQL Server

 
Por Joaquin Gracia
Artículos publicados: 7
Valoración media: 3.73/5
Usuario desde: 20/06/1998

A continuación voy a explicar como configurar el PHP bajo windows para conectarse con una base de datos MS SQL Server.

Conseguir las DLLs

Lo primero que nos hace falta es conseguir las DLLs para conectarnos a un SQL Server, por defecto estas DLLs no van en el paquete de instalación automática, así que tendrás que bajar, si no lo tienes ya, el paquete con la instalación completa.

Descomprime el paquete con la distribución completa y busca el fichero "php_mssql.dll" que está dentro del directorio "extensions", copia este fichero al directorio "dlls" en donde tengas instalado el PHP.

Editar el PHP.ini

Ahora hay que decirle al PHP que tiene una librería nueva y que la debe usar. Así que editaremos el PHP.ini con el Notepad, normalmente el PHP.ini está en el directorio C:\WINNT.

Busca la línea en la que pone "extension_dir = " y modifícala para que apunte al directorio donde hemos copiado la DLL. Con esto le indicamos al PHP donde están las DLL de extensión.

Ahora busca la línea ";extension=php_mssql.dll" y modifícala quitándole el ";" del principio.

Graba el fichero PHP.ini y ya está.

Ejemplo de conexión

Solo nos queda probar que funciona la conexión con el servidor SQL Server, para ello vamos a conectarnos con la base de datos “Northwind” que viene como ejemplo en la instalación de SQL Server. Listaremos el nombre del producto y el precio de la tabla productos.

$conectID = mssql_connect("NombreServidor","SA","");
mssql_select_db("Northwind"); 
$result=mssql_query("select * from products",$numero ); 
while ($row=mssql_fetch_array($result)) { 
   $counter++; $c1=$row["ProductName"]; 
   $c2=$row["UnitPrice"]; 
   echo ("$counter c1: $c1 c2: $c2\n"); 
} 
mssql_close($conectID); 

Bio:
Joaquin Gracia es Ingeniero superior en Informática por Centro Politécnico Superior de la Universidad de Zaragoza, diplomado en informática por la Escola Politècnica Superior de la Universidad de Gerona, Microsoft Certified Professional y entusiasta navegante de Internet desde los inicios en España.


Otros artículos recientes de este autor:
Fecha publicación: 14/09/2002


Más artículos

Valoración

Este artículo ha sido valorado 1065 veces. Valor:  [3.84/5]   
Malo------>Normal----->Bueno
                   

Comentarios

Jesus Alonso (exultente@hotmail.com)28/10/2002

Gracias por la información de conexión a SQL
me fue de mucha útilidad para la creacion de un sitio Web.
Espero posteriormente colaborar con ustedes.

ht (ht@terra.cl)23/02/2004

Ahora busca la línea ";extension=php_mssql.dll" y modifícala quitándole el ";" del principio.

Graba el fichero PHP.ini y ya está.

y reiniciar el servidor web!!! salu2

Edgar Barragan (edgarbarsa@hotmail.com)04/10/2004

Muy bueno el articulo, a mi me funcionó
Agregando $conectId en la instruccion mssql_select_db y quitando $numero de mssql_query

$conectID = mssql_connect("NombreServidor","SA","");
mssql_select_db("Northwind", $conectID);
$result=mssql_query("select * from products");



Juan Jose Burgos (burgos.fiorilo@gmail.com)02/10/2005

Tener cuidado al colocar la ruta de carpetas en la linea "extension_dir ="
dentro del php.ini, ademas de estar el archivo php_mssql.dll, deben contener los demas dll's(ej. php_sockets.dll,php_pdf.dll,php_mysql.dll, etc.), luego reiniciar el servidor Web, finalmente ejecutar el phpinfo y luego probar el siguiente codigo:

$conexion_sqlserver = mssql_connect("SERVIDOR","SA","");
mssql_select_db("BaseDatos");
$consulta_sql = mssql_query("select * from tabla",$conexion_sqlserver);

while ($registro = mssql_fetch_array($consulta_sql))
{
echo $registro[0]."-".$registro[1]."-".$registro[2]."<br>";
}

mssql_close($conexion_sqlserver);

Tio Melo (tio_melo_@hotmail.com)14/11/2005

Este artículo en verdad q me ayudó muxísimo. tenía varios problemas para obtener el resultado esperado, lo logré d la siguiente manera:

$conectID = mssql_connect("MANDRAKE_05","SA","********");
mssql_select_db("Northwind");
$result=mssql_query("select * from products",$conectID);

Graxxxx.

Freddy Kuong (freddykd@yahoo.com)04/01/2006

No solo es además reiniciar el servidor web, si no también tener en cuenta si las extensiones necesitan de otros dlls, en el caso del php_mssql.dll, este necesita el ntwdblib.dll, que este copiado en la carpeta del PHP. Para mayor referencia pueden leer el install.txt que viene en la carpeta del PHP, a partir de la linea 1171 esta [Installation of extensions on Windows]

Añadir un comentario

Si no está de acuerdo con algo o quiere añadir más información al respecto puede incluirla añadiendo un comentario.

Nombre:
E-Mail: (opcional)
Los comentarios son moderados, no aparecen inmediatamente, son leídos por el administrador y publicados según el interés para otros lectores.

Se reserva el derecho de publicación de los comentarios introducidos.

Colabora

¿Te sientes capacitado para escribir un artículo como este? ¿Te gustaría colaborar escribiendo artículos en WebEstilo? Háznoslo saber !!









Comparte



 
Valid HTML 4.01!
Última modificación:11 de Mayo de 2009. Spain - España.
© 1998-2004 por . Todos los derechos reservados.