Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gui Perim

[Resolvido] Conexão PHP + MS SQL

Recommended Posts

Boaaa Tarde galera !

É o seguinte, estou tentando realizar a conexão entre PHP + MS SQL, porém estou tendo alguns problemas.

Uso o EasyPHP versão 5.3.9

E o banco que estou tentando acessar é online, e não possuo mssql instalado em minha maquina.

 

Ja olhei em diversos fóruns (inclusive do IMasters), porém não obtive solução.

 

Realizei os seguintes passos ja:

- A configuração do php.ini está correta (ja desbloqueei a linha do mssql)

- Ja baixei a ntwdblib.dll e coloquei a pasta do Windows32.

 

Mas mesmo assim não funciona......o erro é esse:

Fatal error: Call to undefined function mssql_connect() in C:\Program Files\EasyPHP-5.3.9\www\souamais\config.me.php on line 2

 

 

Ja estou ficando loucoo kkkkk.....gostaria da ajuda de vocês.

Desde ja muito obrigadoo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado por responder shini, não sabia que tinha cido descontinuada...

Dei uma olhada aqui, e peguei os Drivers da própria Microsoft para conexão php+ssql

 

Porém sou leigo no assunto, apenas extrai os arquivos na pasta ext do php.

mas ainda assim não funcionou.

 

Alguma Dica ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se caso continuar dando erro.

 

Adicione no php.ini:

extension=php_sqlsrv_52_ts.dll
#extension=php_sqlsrv_ts.dll
extension=php_pdo_sqlsrv_52_ts.dll

 

E copie as dlls do driver para a pasta ext do seu php.

Lembrando que os nomes das dlls acima vão depender da versão do PDO que você baixou.

 

Atenciosamente

Uerlen Santos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, ja liberei as extenções:

extension=php_pdo.dll

extension=php_pdo_mssql.dll

 

 

Porém, quando salvo o arquivo (php.ini), ele da alguns erros, de que não foi possivel, encontrar o módulo especificado.

Tanto do arquivo php_pdo.dll, quando to php_pdo_mssql.dll

Teria que baixar essas duas dll's e colocar na pasta de extenções ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela ajuda....

Baxei as extenções e coloquei elas dentro da pasta ext...

Porém agora ao iniciar o EasyPhp retorna o seguinte erro:

"PHP Startup PDO: Unable to Initialize Modulo

Modulo compiled with module API=20050922

PHP compiled with module API=20090626

These options need to math"

 

E logo depois aparece outra mensagem:

"O programa não pode ser iniciado porque esta faltando php_pdo.dll no seu computador. Tente reinstala-lo para resolver esse problema"

 

Mas o arquivos esta dentro da pasta ext... =S

 

Vou tentar realizar o procedimento que esta no link do shini....mas ai eu teria que alterar o extension_dir, no php_ini certo ?

 

Uerlen Santos, fiz as alteções que você sugeriu, no php.ini adicionei as lihas

extension=php_sqlsrv_52_ts.dll

extension=php_pdo_sqlsrv_52_ts.dll (porém mudei ambas para 53)

 

E tambem inseri as dll's na pasta ext

Porém mesmo assim ainda não funcionou, ainda continua com os erros citados acima, e qnd tento executar o script de conxão, o erro é:

Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in....

 

Tambem realizei o procedimento descrito no link do shini, porém continua no mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

putz, instala outro no lugaro easyphp, xampp/wampp/lampp

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas se eu instalar o Xampp, por exemplo, não vou precisar realizar as configurações ?

 

Outra coisa, e se ao invés de tentar essa conexão direta, tentar usar um ODBC ?

Iria funcionar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

se a extensão do odbc não esitver zoada, pode resolver o seu problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu fiz a conexão com odbc (segue o código abaixo), e aparentemente ele consegue se conectar normalmente, pelo menos não retorna erro nenhum.

 

$szDBConn="DRIVER={SQL Server};SERVER=sq200.ha.6ps.com;DATABASE=Express";
$szDBUsername="ExpressUser";
$szDBPswd="123@Mudar321";

$rDBConnect = odbc_connect($szDBConn, $szDBUsername, $szDBPswd);

 

O problema é que quando eu tento realizar uma consulta ele da erro:

Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC SQL Server Driver]
Invalid object name

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui trabalho com PHP e MsSql

 

Optei em instalar tudo separado (Apache, PHP, SqlServer e seu respectivo driver)

 

Não tenho nada contra trabalhar com pacotes, porem nem sempre eles estão completos.

 

Se você quiser posso lhe disponibilizar minha pasta do PHP para você testar no seu ambiente de desenvolvimento.

Se quiser pode me adicionar no skype que te passo. uerlen.santos

 

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso encerrado galera....

Peguei outro esquema de conexão, deixo aqui esperando que possa ser útil pra alguem:

 

$db = new COM("ADODB.Connection"); 
$dsn = "DRIVER={SQL Server}; SERVER={server_name};UID={user};PWD={password}; DATABASE={bd_name}"; 
$db ->Open($dsn); 

 

Obrigado a todos pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ADODB não havia sido descontinuada? Ao menos foi o que alguns desenvolvedores me comentaram. Se não foi, tive tantos problemas com ela que eu descontinuei ela nos meus projetos.

 

Se você ainda quiser alguma explicação sobre os drivers da PDO para o MsSQL, aqui tem uma explicação de cada driver e, principalmente sobre SQLSRV, o porque de não funcionar em alguns pacotes de windows.

http://forum.imasters.com.br/topic/476963-erro-ao-conectar-sql-server-2008/page__view__findpost__p__1896102

 

O mais indicado, dos drivers, é o SQLSRV. Rápido e multiplataforma(em partes, depende do compilador, como sempre). Fácil de encontrar para o PHP 5.4+, mas vai depender também da versão do SQL Server (principalmente se for acesso remoto).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Gabriel Heming, não sei se foi descontinuada....nunca tinha usado, porém aqui esta funcionando normalmente.

 

Vi o link com a descrição que você mandou, achei muito interessante.

O ideal no meu caso seria mesmo conseguir utilizar a SLQSRV, maaaass como estou tendo muita dor de cabeça...vou continuar com a ADODB msm srsrs

 

Muito Obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.