Mucho de este lenguaje no he escrito, uno de los motivos es que no trabajo con el hoy día pero siempre me pareció un lenguaje muy interesante y sencillo de entender su sintaxis. Anteriormente hemos visto un ejemplo muy sencillo de concatenación de variables string, hoy haremos algo más interesante: Nos conectaremos a SQL Server 2008 (también funciona con otras versiones) y haremos una consulta sencilla y lo mostraremos en el browser.
Todo esto lo haremos bajo un servidor web Apache instalado en Windows, las fuentes del php no cambiarían si lo usaramos en otro Sistema Operativo, pero si la configuración del PHP en sí sobre apache (prometo verlo más adelante este tema).
Para llevar a cabo este ejemplo doy por hecho que tienen instalado el servidor Web Apache y los módulos para PHP, veremos una pequeña configuración básica nada más. Lo primero que necesitaremos es descargarnos las “.dll” que permitirán interactuar con nuestro motor de bases de datos, ellas podemos descargarlas desde aquí. Normalmente en nuestro directorio donde se encuentra instalado el PHP, existe una carpeta llamada “ext”, en ella debemos copiar el fichero:
php_mssql.dll
La cual se encuentra en las carpetas que acabamos de descargar en un directorio con el mismo nombre. Luego en la raíz de la instalación de PHP, se encuentra un fichero llamado “php.ini“, necesitaremos editarlo con cualquier editor de textos, recomiendo notepad++. Buscamos la siguiente línea y la dejamos como vemos abajo:
extension_dir = "./ext"
Ahora sólo nos queda buscar la siguiente línea y sacarle los 2 puntos “;”
;extension=php_mssql.dll
Con esto ya tenemos preparado nuestro servidor, ahora necesitamos crear una tabla de ejemplo, en mi caso cree una base de datos llamada “DevTroce” y agregue la siguiente tabla:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | USE [DevTroce] GO /****** Object: Table [dbo].[Clientes] Script Date: 04/04/2010 15:18:28 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[Clientes]( [IdCliente] [bigint] NOT NULL, [Nombres] [varchar](50) NOT NULL, [Apellidos] [varchar](50) NOT NULL, [Direccion] [varchar](50) NULL, [Telefeono] [varchar](50) NULL, [Documento] [varchar](50) NOT NULL, CONSTRAINT [PK_Clientes] PRIMARY KEY CLUSTERED ( [IdCliente] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO SET ANSI_PADDING OFF GO |
Alli pueden cargar los datos que deseen. Ahora vamos en carpeta de instalación del Apache y buscamos el directorio “htdocs“, que es justamente donde se almacenan las páginas servidas, creamos un directorio llamado “Devtroce” y dentro de él, un fichero llamado index.php.
Una vez hecho ésto podemos agregar dentro del mismo el siguiente código:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php try { ## conexion a sql server... $link=mssql_connect("NABUCODONOSOR","sa","******"); ## seleccionamos la base de datos mssql_select_db("DevTroce",$link); ## generamos el query $result=mssql_query("select * from Clientes",$link); ## recorremos todos los registros while($row=mssql_fetch_array($result)) { $counter++; echo ("$counter Nombres: ".$row["Nombres"].", Direccion: " .$row["Direccion"]."<br/>"); echo "<hr>"; } } catch (Exception $e) { echo "Caught Exception ('{$e->getMessage()}')\n{$e}\n"; } ## cerramos la conexion mssql_close($link); ?> |
Ahora solo resta probar lo desarrollado, en nuestro browser ponemos la siguiente direccion:
http://localhost/DevTroce/
Articulos Relacionados:









en
en
en
en
cheee! me has salvado el pellejo! queda aclarar que solo me jalo con PHP 5.1.6 y APACHE 2.0.9 con otras versiones no me jalaba !!!!
Hol a gracias por el articulo muy completo logre hacerlo funcionar sin problemas aunque en algunos casos el nombre del servidor suele llamarse algo como nombre-equipo\instancia sql server y puede ser necesario actulizar la libreria ntwdlib.dll en system32 despues de hacer esto se debe reiniciar los servicios de apache y deberia funcionar yo lo lo hice sobre windows 7 y wampserver 2i con php 5.2
Les dejo el codigo que utilice
try {
## conexion a sql server…
$link=mssql_connect(“w7\aspnet”,”sa”,”123456″);
## seleccionamos la base de datos
mssql_select_db(“BD_Estudiantes”,$link);
## generamos el query
$result=mssql_query(“select * from Tbl_Estudiantes”,$link);
## recorremos todos los registros
while($row=mssql_fetch_array($result))
{
$counter++;
echo (“$counter Nombres: “.$row["Nombres"].”, Apellidos: ” .$row["Apellidos"].”");
echo “”;
}
} catch (Exception $e) {
echo “Caught Exception (‘{$e->getMessage()}’)\n{$e}\n”;
}
## cerramos la conexion
mssql_close($link);
Saludos
Gracias Carlos por compartirlo..