Escenarios reales de interoperabilidad Web
Usando SQL Server en aplicaciones PHP
Eduardo A. Sojo T.
Especialista en Soluciones de Plataformas Web Microsoft Venezuela, S.A. Email:
[email protected] Blog: eduardosojo.com Web: www.microsoft.com/venezuela/web
eduardosojo eduso EduSo
PHP – SQL Server mssql_ Por defecto con instalación de PHP Estandarizado para SQL Server 2000 y SQL Server 2005
sqlsrv_ Optimizado para SQL Server 2005 & 2008 Cualquier edición (incluyendo Express) Importantes mejoras de seguridad (manejo de parametros) Instalación completa (incluyendo configuración de archivo php.ini) Puede ser instalado desde Microsoft Web Platform Installer (Web PI)
sqlsrv_ - Modos de conexión Autenticación de Windows 2 parámetros: Nombre de servidor (local) .\SQLEXPRESS servidor:puerto servidor, puerto Base de Datos
Autenticación de SQL Server 2 parámetros adicionales Usuario (UID) Clave (PWD)
sqlsrv_ - Trabajando con datos Retorno de datos sql_fetch_array() – Arreglo SQLSRV_FETCH_NUMERIC SQLSRV_FETCH_ASSOC
sql_fetch_object – Objeto sqlsrv_fetch y sqlsrv_get_field Devuelve un solo campo
sqlsrv_ - Trabajando con datos Usando parametros
INSERT INTO CustomerTable (Name, Email) VALUES ('Brian', '
[email protected]'); DROP TABLE CustomerTable; PRINT 'Gotcha!'--')
Usando parametros $name = $_REQUEST['name']; $email = $_REQUEST['email']; $params = array($name, $email); $sql = 'INSERT INTO CustomerTable (Name, Email) VALUES (?, ?)'; $stmt = sqlsrv_query($conn, $tsql, $params);
sqlsrv_ - Otras funciones sql_srv_errors() Maneja el error capturado producto de la última petición hacia la base de datos
sql_srv_connect() Establece la conexión con la BD
sqlsrv_free_stmt() Libera el objecto cargado para la operación con los datos
sql_query() Ejecuta la sentencia sql pasada como parametro
sql_srv_close() Cierra la conexión
¿Cómo hacerlo más fácil?
Preguntas?
… Respuestas
Recursos PHP Training Kit http://go.microsoft.com/?linkid=9656081
SQL Server driver para PHP Versión 1.0 http://go.microsoft.com/fwlink/?LinkId=123470
Versión 1.1 http://short.to/osav
SQL CRUD PHP http://sqlcrudphpwizard.codeplex.com/
PHP en IIS.net http://php.iis.net
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.