batisteli 0 Denunciar post Postado Março 24, 2010 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
Denis_Uyeda 0 Denunciar post Postado Março 24, 2010 Provavelmente o módulo MSSQL do PHP não está instalado.... :/ Isso não é um erro de programação, mas sim de configuração Compartilhar este post Link para o post Compartilhar em outros sites
batisteli 0 Denunciar post Postado Março 24, 2010 Olá Denis, obrigado pela dica. Sabe me dizer onde é que posso encontrar um step-by-step de como instalar o modulo? Compartilhar este post Link para o post Compartilhar em outros sites
João Batista Neto 448 Denunciar post Postado Março 24, 2010 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
Denis_Uyeda 0 Denunciar post Postado Março 24, 2010 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
Denis_Uyeda 0 Denunciar post Postado Março 24, 2010 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
batisteli 0 Denunciar post Postado Março 24, 2010 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
Denis_Uyeda 0 Denunciar post Postado Março 24, 2010 Quer dizer que você não pode instalar o módulo devido à alguma restrição, ou coisa assim? Compartilhar este post Link para o post Compartilhar em outros sites
batisteli 0 Denunciar post Postado Março 24, 2010 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
Denis_Uyeda 0 Denunciar post Postado Março 25, 2010 @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.php9- 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