_william_ 0 Denunciar post Postado Abril 28, 2011 Boa tarde amigos, Sou novo por aqui, e infelizmente já começo pedindo a ajuda de voces: A situação é a seguinte: Temos aqui um script que faz a leitura de uma arquivo do excel (.xls) enviado pelo cliente e grava os dados lidos no bd. Tudo funcionava bem, ate que trocamos o servidor. Migramos todo o sistema para o novo micro, apache, php, mysql ... Fora a diferenca de hardware, o servidor antigo rodava xp 32 bits, e o novo é o 7 Ultimante 64 bits. Enfim, creio que seja um problema de configuração, ou algo do tipo pois ambos rodam o wamp 2.0, office 2007. Considerando que o mesmo script roda bem em outro servidor (e outra empresa), so = windows server 2003, office 2003, bom o script é muito grande, portanto criei uma página somente com a parte problematica para isolar o erro, e conseguir uma solução:essa é a parte do script que está com problema: <?php $pntCom = new COM("excel.application"); $pntArq = $pntCom->Workbooks->Open("D:/wamp/www/gestor/web/geral/xls/teste.xls"); ?> o erro retornado é esse: Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft Office Excel<br/><b>Description:</b> 'D:/wamp/www/gestor/web/geral/xls/teste.xls' não pôde ser localizado. Verifique a ortografia do nome do arquivo e se a sua localização está correta. Se você estiver tentando abrir o arquivo a partir de sua lista de arquivos usados recentemente, verifique se ele não foi renomeado, movido ou excluído.' in D:\wamp\www\gestor\web\geral\excel.php:3 Stack trace: #0 D:\wamp\www\gestor\web\geral\excel.php(3): variant->Open('D:/wamp/www/ges...') #1 {main} thrown in D:\wamp\www\gestor\web\geral\excel.php on line 3 obs: o arquivo está no diretório indicado e a extensão com está ativa no Wamp. Alguem tem alguma ideia do que pode ser? Compartilhar este post Link para o post Compartilhar em outros sites
Quelipe 15 Denunciar post Postado Abril 28, 2011 Você já tentou assim? $pntArq = $pntCom->Workbooks->Open("gestor/web/geral/xls/teste.xls"); at+ Compartilhar este post Link para o post Compartilhar em outros sites
_william_ 0 Denunciar post Postado Abril 28, 2011 Valeu pela ajuda Quelipe, ja tentei tbm, mas o erro persiste... mais alguma ideia? Compartilhar este post Link para o post Compartilhar em outros sites
Quelipe 15 Denunciar post Postado Abril 28, 2011 Bom, vamos partir do princípio; Digamos que o arquivo xls já se encontra no diretório: gestor/web/geral/xls/, correto? De qual diretório você esta executando a linha: $pntArq = $pntCom->Workbooks->Open(.... at+ Compartilhar este post Link para o post Compartilhar em outros sites
_william_ 0 Denunciar post Postado Abril 28, 2011 Sim, o arquivo esta no diretorio. o diretorio da pagina executada é um antes do xls, ou seja: gestor\web\geral\excel.php. obs: Já tenteicololcar o arquivo na mesma pasta, e mandar direto o open("teste.xls") at+ Compartilhar este post Link para o post Compartilhar em outros sites
Quelipe 15 Denunciar post Postado Abril 28, 2011 Então se o script está um diretório antes, o caminho correto seria: $pntArq = $pntCom->Workbooks->Open("xls/teste.xls"); Mas como você falou que já fez o teste com o arquivo em mesmo nível de diretório, fica complicado. Faça o teste com o caminho acima e passa qual o erro apresentado, após isso de premissão 0777 na pasta xls, apesar de que é só leitura, mas faça e teste novamente. At+ Compartilhar este post Link para o post Compartilhar em outros sites
alexsandrofm 0 Denunciar post Postado Abril 28, 2011 O arquivo é xls mesmo ou xlsx? Já tive problemas com a versão do xls. Compartilhar este post Link para o post Compartilhar em outros sites
_william_ 0 Denunciar post Postado Abril 28, 2011 Dei a permissao, mudei a linha, mas o erro persiste, o mesmo erro: Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft Office Excel<br/><b>Description:</b> 'xls/teste.xls' não pôde ser localizado. Verifique a ortografia do nome do arquivo e se a sua localização está correta. Se você estiver tentando abrir o arquivo a partir de sua lista de arquivos usados recentemente, verifique se ele não foi renomeado, movido ou excluído.' in D:\wamp\www\gestor\web\geral\excel.php:3 Stack trace: #0 D:\wamp\www\gestor\web\geral\excel.php(3): variant->Open('xls/teste.xls') #1 {main} thrown in D:\wamp\www\gestor\web\geral\excel.php on line 3 **edit**: alexsandrofm, eu o recebi como xlsx, mas abri no excel e salvei para .xls At+ Compartilhar este post Link para o post Compartilhar em outros sites
Quelipe 15 Denunciar post Postado Abril 28, 2011 Você está usando a "exel reader" Spreadsheet_Excel_Reader()? Pois eu uso ela e nunca tive problemas. At+ Compartilhar este post Link para o post Compartilhar em outros sites
_william_ 0 Denunciar post Postado Abril 28, 2011 Você está usando a "exel reader" Spreadsheet_Excel_Reader()? Pois eu uso ela e nunca tive problemas. At+ Na verdade não, esse é um método diferente. não sei exatamente termo, mas ele "estancia" uma aplicacao do excel, carrega o arquivo xls, le e depois "fecha". Depois que comecei com esse problema, dei uma pesquisada e encontrei o "exel reader", porem o script e bem grande e ja esta incorporado nesse sistema, como eu disse, esses dados são lidos, depois salvos em um banco, os parametros tbm estao cadastrados em banco e tal... Mas o que mais me intriga e o fado de mesmo script, e exatamente o mesmo sistema funcionar em outro servidor sem problema algun. Bom, mas talvez eu precise e fazer a migracao, mas to precisando dessa importacao pra ontem... At + Compartilhar este post Link para o post Compartilhar em outros sites
Quelipe 15 Denunciar post Postado Abril 28, 2011 Então, verifique se essa biblioteca que você está usando não necessita de algo especial no servidor, verifique o arquivo "ini" do php do servidor antigo e compare com o do servidor novo, verifique também as configurações do apache, ela de ter dependências de alguma configuração em especial. At+ Compartilhar este post Link para o post Compartilhar em outros sites
alexsandrofm 0 Denunciar post Postado Abril 28, 2011 Cara, como você disse, que em outro servidor funciona, não vejo outra explicação a não ser a configuração do php.ini. Pegue o ini do outro servidor e dá uma comparada, só consigo ver isso como problema. Compartilhar este post Link para o post Compartilhar em outros sites
_william_ 0 Denunciar post Postado Abril 28, 2011 Então, verifique se essa biblioteca que você está usando não necessita de algo especial no servidor, verifique o arquivo "ini" do php do servidor antico e compare com o do servidor novo, verifique também as configurações do apache, ela de ter dependências de alguma configuração em especial. At+ Sim, pensei nisso tbm, usei o WinMerge para comparar o php.ini e o httpd.conf, ambos estao identicos, fora os diretorios (um está no c: e o outro está no d:). Alguma ideia? Sinceramente, pensando na migracao.... Vlw pelo apoio! Compartilhar este post Link para o post Compartilhar em outros sites
Quelipe 15 Denunciar post Postado Abril 28, 2011 Cara, não tem nenhuma linha na biblioteca que está colocando esse caminho fixo não? Já não sei mais por onde te ajudar... Vá tentando e nos passe as novidades. At+ Compartilhar este post Link para o post Compartilhar em outros sites
_william_ 0 Denunciar post Postado Abril 28, 2011 Cara, Na verdade não tem não... ela usa a Extensão Com do php. Já estou migrando para o "exel reader". Eu reporto os avanços. At+. Compartilhar este post Link para o post Compartilhar em outros sites