Foros del Web » Programando para Internet » PHP »

Como conectar PHP con SQL Server?

Estas en el tema de Como conectar PHP con SQL Server? en el foro de PHP en Foros del Web. Hola compañeros del web, tengo un problema en conectar PHP con SQL Server, he leido algunos tutos en internet y segui al pie de la ...
  #1 (permalink)  
Antiguo 03/03/2015, 23:51
Avatar de Rigby  
Fecha de Ingreso: marzo-2015
Ubicación: Nezahualcoyotl Estado de México
Mensajes: 1
Antigüedad: 9 años, 1 mes
Puntos: 0
Como conectar PHP con SQL Server?

Hola compañeros del web, tengo un problema en conectar PHP con SQL Server, he leido algunos tutos en internet y segui al pie de la letra cada uno de los pasos que describen, pero al momento de probar el script de conexión con la Base de Datos, surgen varios errores, estoy usando el appserv 2.5.10, los pasos que segui para tratar de conectarlo con SQL Server son los siguientes:

1.- Ingrese a la página oficial de PHP donde proporcionan los controladores para agregarlos a la carpeta "ext" y despues agregarlos al archivo php ini, la url para descargar los controladores es la siguiente: http://php.net/manual/es/sqlsrv.requirements.php

2.- El siguiente paso fue verificar la versión de PHP instalada en la computadora, dependiendo de la versión se instala el controlador adecuado, para versiones inferiores a PHP 5.3 descargar la versión SQLSRV 2.0.

3.- Despues de descargar los controladores (en total son 12 los controladores que me descargo) copie y pegue en la carpeta ext, la url es la siguiente: C/Appserv/php5/ext



4.- Nos vamos a php ini, dentro del archivo buscamos la función "MSSQL" despues de ubicar la función, escribimos las nueveas librerias, estas las coloque antes del apartado llamado "Module Settings" (así es como decia en el tutorial que leí), la ruta del archivo php ini en Appserv es: C/Windows/php.



5.- El siguiente paso fue reiniciar la maquina para que se aplicaran los cambios correspondientes al archivo php ini.

6.- El siguiente paso fue configurar SQL Server Management Studio en el apartado herramientas de configuración/ Administrador de configuración de SQL Server, (entrando desde el menú inicio).



7.- Despues de tener abierto SQL Server 2012, entramos a protocolos, en la parte de canalización con nombre aparece desactivada, darle click con botón derecho y habilitar la opción.

8.- Despues nos vamos a servicios de SQL Browser, habilitar SQL Server Browser.



9.- Para hablitar SQL Server browser:
A) Click con el botón derecho en propiedades, servicio, modo de inicio, seleccionar en el combo la opción "Automatico", pulsamos el botón aplicar y despues aceptar.

10.- En SQL Server Browser le damos nuevamente click con botón derecho, y en el combo seleccionamos "Servicio de red".

11.- En la configuración de SQL Server nos vamos en la opción Protocolos de SQL Server "SQLEXPRESS 2012", despues en el apartado TCP/IP le damos click con botón derecho en propiedades, en el recuadro que nos aparece nos vamos a direcciones IP, despues nos vamos en el apartado "Puertos dinamicos TCP" le agremaos el número 1433 (así es como se muestra en el manual que leí).

12.- Despues vamos a inicio y abrimos SQL Server Management Studio



13.- Nos vamos a panel de control, seleccionamos iconos pequeños y nos vamos a firewall de windows.

14.- En el firewall seleccionamos "Permitir un programa o una caracteristica a través de firewall de Windows", despues pulsamos el botón "Permitir otro programa". Pulsamos el botón Examinar.

15.- En examinar seleccionamos la ruta: C/Archivos de programa/Microsoft SQL Server/MSSQL11/MSSQL/Binn/sqlservr, por ultimo presionamos el boton agregar.



16.- Ahora agregamos el Browser: C/Archivos de programa/Microsfot SQL Server/90/Shared/sqlbrowser, despues pulsamos agregar y palomeamos ambas casillas en SQL Browser Service EXE, despuse presionamos el botón "Aceptar".


17.- Abirmos SQL Server Management Studio, en el apartado nombre del servidor seleccionamos al opción "Buscar más" y en motor de Base de Datos seleccionamos el que esta por defecto. Seleccionamos autenticacion de windows y pulsamos el botón aceptar.



18.- Damos click con el boton derecho al servidor y nos vamos a propiedades. Despues nos vamos en el apartado llamado "conexiones", tener seleccionada la casilla "Permitir conexiones remotas con este servidor". Pulsamos aceptar.

19.- En el explorador de objetos de SQL Server Management Studio entramos en la carpeta seguridad, click en la carpeta de inicio de sesión.

20.- Modificamos el super usuario que tiene todos los privilegios llamado "sa", le damos click con botón derecho y modificamos la contraseña, despues pulsamos aceptar.



21.- Depues se prueba la conexion con un scritp en php, el cual es el siguiente.

Código PHP:
<?php

   $usuario
'sa';
   
$pass '123456';
   
$servidor 'EDGAR-PC\SQLEXPRESS2012'
   
$basedatos 'miEmpresa';

   
$info = array('Database'=>$basedatos'UID'=>$usuario'PWD'=>$pass); 
   
$conexion sqlsrv_connect($servidor$info); 

   if(
$conexion){
      echo 
'Conectado';
   }else{
      echo 
"<strong>Error con la conexion</strong> <br />";
      echo 
print_r($info); 
   }

?>
Al probarlo este es el mensaje de error que arroja:



Antes de colocar los paremetros para la conexión con la Base de Datos, muestra otro error indicando el uso de la función "sqlservr", el código en php es el siguiente:

Código PHP:
<?php 

   $usuario
'usuario';
   
$pass 'password';
   
$servidor 'nombre_servidor'
   
$basedatos 'nombre_de_la_base';

   
$info = array('Database'=>$basedatos'UID'=>$usuario'PWD'=>$pass); 
   
$conexion sqlsrv_connect($servidor$info);  

   if(!
$conexion){
      die( 
print_rsqlsrv_errors(), true));
   }
   echo 
'Conectado';

?>
El error en pantalla es el siguiente:



Estoy leyendo más sobre este tema de como poder conectart PHP con SQL Server, pero el resultado sigue siendo el mismo (sin éxito en la conexión con la Base de Datos), espero me puedan proporcionar documentación de como poder hacer esto, si existe una forma más facil de llegar al resultado usando Appserv se los agradeceria muchisimo.
  #2 (permalink)  
Antiguo 04/03/2015, 09:15
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Como conectar PHP con SQL Server?

Si hubieras leído bien los requerimientos sabrías por que tienes ese problema.
Cita:
For versions 3.0 and 2.0, the x86 version of SQL Server Native Client is required on the computer where PHP is running. If you are using a 64-bit operating system, the x86 version of SQL Server Native Client will be installed with the x64 version of SQL Server Native Client (do not install the x86 version of SQL Server Native Client on an x64 operating system).

If you are using the SQLSRV driver, sqlsrv_client_info will return information about which version of SQL Server Native Client is being used by the Microsoft Drivers for PHP for SQL Server. If you are using the PDO_SQLSRV driver, you can use PDO::getAttribute to discover the version.

Version 3.0 of the driver requires Microsoft SQL Server 2012 Native Client. You can download Microsoft SQL Server 2012 Native Client from the SQL Server 2012 feature pack page.

Version 2.0 of the driver requires Microsoft SQL Server 2008 R2 Native Client. Click on the appropriate link below:
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 04/03/2015, 09:41
Avatar de jose_php  
Fecha de Ingreso: mayo-2014
Mensajes: 44
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Como conectar PHP con SQL Server?

Hola, usando la libreria sqlsrv usa lo siguiente:

Este es para SQL SERVER 2012 con PHP 5.3 utilizando wampserver

Cita:
Descargar: SQLSRV30.EXE
Instalar: SQLSRV30.EXE -> (C:\wamp\bin\php5.3\ext\)
Librerias: php_sqlsrv_53_ts.dll / php_pdo_sqlsrv_53_ts.dll
Saludos.

Etiquetas: sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:04.