Ir para conteúdo

POWERED BY:

Arquivado

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

batisteli

Erro fatal. Função indefinida

Recommended Posts

Olá todos bom dia!

Tenho uma loja que acessa um BD MSSQL e funcionava tudo correctamente. Entretanto a partir da migração para um novo servidor agora acontece o seguinte alerta:

 

Fatal error: Call to undefined function mssql_connect() in /var/www/vhosts/wesybi.pt/httpdocs/DBConnectorMSSQL.php on line 20

 

Já dei uma olhada mas não dou pelo problema. Precisava de uma ajuda urgente. Segue trecho do script

<?php

class DBConnectorMSSQL
{
var $conn;
var $DB_TYPE = "MSSQL";
	var $SERVER = "195.XX.XXX.XXX:1433";
var $DATA_BASE = "wesybi";
var $USERNAME = "AfterYou";
var $PASSWORD = "*********";

function DBConnectorMSSQL()
{}

function connectDB()
{
$this->conn = mssql_connect($this->SERVER, $this->USERNAME, $this->PASSWORD);

if($this->conn == FALSE)
{
echo "FAILED TO CONNECT TO MS SQL SERVER - PHC"; 
return false;
}
else if(mssql_select_db($this->DATA_BASE, $this->conn)==FALSE)
{
echo "FAILED TO CONNECT TO MS SQL SERVER - PHC"; 
		return false;
}

return true;
}

function chooseDB($dbname)
{
if(mssql_select_db($dbname,$this->conn) == FALSE)
{
return false;
}
else
{
return true;
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

onde é que posso encontrar um step-by-step de como instalar o modulo?

 

http://br2.php.net/manual/pt_BR/mysql.installation.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

onde é que posso encontrar um step-by-step de como instalar o modulo?

 

http://br2.php.net/manual/pt_BR/mysql.installation.php

 

Esse tutorial é para o MySQL :/

 

@batisteli

 

Verifique se na sua pasta php/ext não existe um php_mssql.dll. Se tiver, você só precisará apontá-lo no seu php.ini.. Com o MSSQL é algo que eu nunca fiz na prática, mas provavelmente será só isso..

 

Depois eu volto e tento deixar um pouco mais claro ok?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se tiver a dll, acredito que seja assim

 

vá no seu php.ini

descomente essa linha

;extension=php_mssql.dll

 

reinicie o seu servidor apache

 

creio que isso deve funcionar

 

se não tiver a biblioteca:

Se o servidor for Windows e estiver instalando por .msi, então você tem a opção de instalar esse módulo na hora da instalação do PHP, verifique em extensões na hora da instalação

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não tentei esta indicação porque lembrei-me que quando contratei o servidor anterior foi realmente necessário necessário instalar tal modulo. Só que o hosting fazia este tipo de intervenção mediante pagamento o que fiz na altura mas para este servidor actual não tenho esta possibilidade então vou ter de me virar. O problema é que meus conhecimentos são os básicos daí a necessidade de instruções detalhadas. Se me puder dar mesmo estas instruções com um pouco mais de detalhes ficarei muito agradecido

Compartilhar este post


Link para o post
Compartilhar em outros sites

Me expressei mal. Posso instalar só não sei é como fazê-lo. Encontrei uma informação que me parece bastante completa que começa pela necessidade de se instalar a FreeTDS. Porém antes de instalar qualquer coisa gostaria de saber exatamente o que tenho configurado. O autor da matéria informa que normalmente o info.php não traz a informações sobre o MSSQL a menos que se o force porém não consegui entender como é que se força o info.php a mostrar estas informações. Sabe me dizer como? Caso queira dar uma olhada aqui está o link para o artigo: http://www.aspfree.com/c/a/MS-SQL-Server/Using-PHP-with-MS-SQL-Server/. Só tem um problema o artigo é de 2004 ou seja, um bocado velhinho. Se calhar já não é válido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@batisteli

 

Podemos fazer um teste. Faça assim:

 

1- Procure a sua pasta php

2- Entre na pasta ext

3- Veja se tem uma dll com o nome php_mssql.dll

4- Se tiver, então suba um diretório (volte um diretório) e abra o php.ini com o bloco de notas ou qualquer editor de texto

5- Procure a linha extension=php_mssql.dll

5- Se ela estiver com um ponto-e-vírgula no início (;extension=php_mssql.dll) retire-o

6- Reinicie o Apache ou qualquer servidor web que você esteja usando

7- Crie um arquivo de teste assim:

<?php
mssql_connect("xx","xx","xx");
?>
8- Salve esse arquivo como teste_msssql.php

9- Tente executá-lo no seu servidor

10- Se a mensagem for

Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: XX in xxx\teste_msssql.php on line 2 é pq ele está instalado

 

:)

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.