Raramente uso PHP no Windows, mas às vezes alguém me pergunta como configurar isso ou aquilo. Nos últimos dias precisei botar para funcionar o PHP com Sql Server no Windows e deixo aqui meu relato para quem precisar passar pelo mesmo.

Em primeiro lugar, instalei o Sql Server Express 2008 (www.microsoft.com/en-us/download/details.aspx?id=1695).

Em seguida, instalei o Vertrigo (vertrigo.sourceforge.net/), que é um servidor bem bacana de PHP para Windows.

Se o servidor Sql Server não está no mesmo servidor que a instalação do PHP, você precisará instalar também o Sql Server Native Client (msdn.microsoft.com/en-us/sqlserver/ff658532.aspx), que provê a conectividade com o Sql Server.

Bom, por fim, precisamos adicionar as extensões do Sql Server para o PHP, que você pode encontrar aqui (www.microsoft.com/en-us/download/details.aspx?id=20098). Rode o executável SQLSRV20.EXE, que por sua vez irá descompactar algumas .dll's.

No meu caso, copiei as seguintes bibliotecas:
php_pdo_sqlsrv_53_ts_vc9.dll
php_sqlsrv_53_ts_vc9.dll

Para a pasta do vertrigo:
C:\Arquivos de programas\VertrigoServ\Php\ext

Em seguida, habilitei estas bibliotecas no php.ini:
extension=php_pdo_sqlsrv_53_ts_vc9.dll
extension=php_sqlsrv_53_ts_vc9.dll

Bom, por fim, basta reiniciar o Vertrigo e passar a utilizar a extensão. Maiores detalhes aqui: www.php.net/sqlsrv

Tudo isso para homologar o Adianti Framework (www.adianti.com.br/framework) para o Sql Server.

Para testar a conexão, usei este pequeno script. Claro, primeiro eu criei a tabela e alimentei ela:

  1. <?php
  2. $serverName "tcp:WINDOWS-BD\SQLEXPRESS";
  3. $connectionOptions = array( "Database"=>"master""UID"=>"sa""PWD"=>"12345678");
  4. $conn sqlsrv_connect$serverName$connectionOptions );
  5. if (!$conn)
  6. {
  7.     var_dump(sqlsrv_errors());
  8. }
  9. /* Get products by querying against the product name.*/
  10. $tsql "SELECT * from produtos";
  11. /* Execute the query. */
  12. $getProducts sqlsrv_query$conn$tsql );
  13. /* Loop thru recordset and display each record. */
  14. while( $row sqlsrv_fetch_array$getProducts ) )
  15. {
  16.     print_r$row );
  17. }
  18. /* Free the statement and connection resource. */
  19. sqlsrv_free_stmt$getProducts );
  20. sqlsrv_close$conn );
  21. ?>


Comentários

 


Você precisa realizar login pelo Facebook para enviar posts, comentários, apagar posts ou baixar posts em PDF. Para isso, clique no botão "Login no facebook".



Receba os posts por email: (?)

Conheça o Adianti Framework para PHP:

  • Desenvolvimento com componentes;
  • Formulários e datagrids.
  • Versão Web e Desktop (Gtk);
  • Multiplataforma;
  • Desenhe as interfaces;
  • IDE própria (Adianti Studio).
Ver detalhes...

Tenha mais produtividade com:

Adianti Studio: IDE para PHP

  • Leve e rápido;
  • Syntax highlight;
  • Gerência de projetos;
  • Navegação em banco de dados;
  • Autocomplete e plugins.
Mais informações...