Ir para o conteúdo

 Voltar a Fórum do CAU
Tela cheia

Problemas ao entrar no módulo administrativo

20 de Abril de 2012, 9:42 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 19 vezes

Olá,

      Eu encontrei um pequeno bug no CAU. Instalei na pasta /home/cau/public_html/. Mas ao tentar entrar no módulo administrativo, dá o seguinte erro:

Fatal error: Class 'menu' not found in /home/cau/public_html/gestaoti/include/PHP/menu.php on line 18

     Dando uma garimpada no código, vi o seguinte (arquivo include/PHP/class/class.pagina.php):

if(strpos($_SERVER["SCRIPT_FILENAME"], "cau/")){
        require_once "../gestaoti/include/PHP/class/class.parametro.php";
        require_once '../gestaoti/include/PHP/GridMetaDados.php';
}else{
        require_once 'include/PHP/class/class.parametro.php';
        require_once 'include/PHP/GridMetaDados.php';
}

     Como a pasta em que eu instalei possui cau/, ele sempre vai incluir as classes erradas. Por hora eu mudei a pasta da instalação e resolvi, mas seria interessante corrigir o bug ou instruir no manual para não utilizar uma pasta parente com o nome 'cau', para evitar esse problema...

Autor: Leandro José Ventura Silva


33 comentários

  • 8629506fda918d738c8cfe1ebc9903d0?only path=false&size=50&d=404Nayanne Araujo(usuário não autenticado)
    20 de Abril de 2012, 10:35

     

    Olá Leandro,

    Obrigada pela colaboração. Vamos informar isso no manual de instalação.

     Abraço.

    Nayanne.

     

  • C82ee1db396aef27eff9fd9cfc911271?only path=false&size=50&d=404Rubens Mendonça(usuário não autenticado)
    21 de Maio de 2012, 15:34

     

    Boa tarde Leandro. Este BUG, só ocorre quando o CAU é instalado no Sistema Operacional Windows. No Linux ele roda perfeitamente.

    Para corrigir esse problema eu fiz o seguinte:

    Retirei a barra que vem após o nome do diretório (cau/), de todos os arquivos na pasta sisgestaoti.

    Ficou assim:

    if(strpos($_SERVER["SCRIPT_FILENAME"], "cau")){
            require_once "../gestaoti/include/PHP/class/class.parametro.php";
            require_once '../gestaoti/include/PHP/GridMetaDados.php';
    }else{
            require_once 'include/PHP/class/class.parametro.php';
            require_once 'include/PHP/GridMetaDados.php';
    }

    Espero ter ajudado.

    • 1544109014316148197d1ee8b79970f3?only path=false&size=50&d=404José Max Deivys Alves de Moura Moura(usuário não autenticado)
      29 de Maio de 2012, 0:56

       

      Não sei se podemos chamar isso de bug... acho que podemos dizer que o sistema é muito dependente de uma configuração especifica de ambiente (plataforma). Se seguimos a risca o manual de instalação há grade chance de tudo dá certo.

      O fato é que o sistema faz include condicional, o grande "problema" está na condição: ela é baseada na localização do script que está sendo chamado, $_SERVER["SCRIPT_FILENAME"]. Ainda mais, usa a função strpos() - php.​net/​manu​al/e​n/fu​ncti​on.s​trpo​s.ph​p, que retorna a posição da string passada como parâmetro. É interessante observar que se a posição for 0 o teste pode ser falso, algo que, ao meu ver, dificilmente irá acontecer no contexto dessa aplicação.

      alguns problema e/ou inconvenientes:

       - o teste no windows vai falhar, pois o win usa \ e não /, assim a string no windows seria cau\.

      - O sistema não pode está num diretório pai de nome "cau", pois o if sempre vai se executado (nunca o else, a condição sempre será verdadeira), então quando o script for chamado a partir de gestaoti o o include não vai funcionar, pois está subindo(../gestaoti) um diretorio: ../gestaoti/include/PHP/class/ e era pra ser include/PHP/class/

      uma proposta:

      penso que seria um boa ideia colocar o include/PHP/class no diretorio raiz do sistema, assim tanto o cau quanto o gestaoti acessaria da mesma forma.

      seria assim:

      -raiz(document_root do apache/virtualhosts)

      --core

      ---class

      --cau

      --gestaoti

      os includes para as classes: ../core/class

       

      ai vai um script q criei para entender melhor essa questão:

      <?php

      $string1 = '/cau';
      $string2 = '/cau/';
      $string3 = 'C:\\cau\\'; // a 1ª barra é um scape
      $string4 = 'C:\\cau/';
      $string5 = '/cau/sisgestaoti/cau/';
      $string6 = 'cau/sisgestaoti/cau/';

      $result = strpos($_SERVER["SCRIPT_FILENAME"], "cau/");
      echo $_SERVER["SCRIPT_FILENAME"].'<br>';
      echo ' - resultado com $_SERVER["SCRIPT_FILENAME"]: '. var_dump($result);
      echo '<br>';

      $result1 = strpos($string1, "cau/");
      echo ' - resultado com /cau: '. var_dump($result1);
      echo '<br>';

      $result2 = strpos($string2, "cau/");
      echo ' - resultado com /cau/: '. var_dump($result2);
      echo '<br>';

      $result3 = strpos($string3, "cau/");
      echo ' - resultado com C:\\cau\\: '. var_dump($result3);
      echo '<br>';

      $result4 = strpos($string4, "cau/");
      echo ' - resultado com C:\\cau/'. var_dump($result4);
      echo '<br>';

      $result5 = strpos($string5, "cau/");
      echo ' - resultado com /cau/sisgestaoti/cau/: '. var_dump($result5);
      echo '<br>';

      $result6 = strpos($string6, "cau/");
      echo ' - resultado com cau/sisgestaoti/cau/: '. var_dump($result6);
      echo '<br>';

Cópia para o Sistema Operacional Windows

20 de Abril de 2015, 18:32, por Desconhecido

Autor: Zeno Rodrigues Viana Filho



Instalação no Windows

26 de Dezembro de 2013, 9:22, por Desconhecido

Estou com problemas na instalação do CAU no windows.



erro na tela de login

1 de Agosto de 2013, 9:35, por Desconhecido

Olá bom dia pessoal,



Disponibilizado novo canal para envio de sugestões de melhorias/funcionalidades

15 de Outubro de 2012, 15:50, por Desconhecido

Caros colegas,


A comunidade CAU foi criada em abril deste ano e o software tem ajudado várias empresas/órgãos a administrar suas Centrais de Atendimento. Passados 6 meses chega a hora de pensarmos e planejarmos sua evolução, tanto na melhoria da qualidade eliminando bugs quanto a implementação de novas funcionalidades.
Através de uma metodologia inédita aqui no Portal SPB, os membros desta comunidade irão sugerir e decidir quais serão as demandas das próximas versões através de método democrático - votação.

Disponibilizamos hoje um novo canal para sugestão de melhorias e/ou novas funcionalidades. A idéia consiste em centralizar num único ambiente as sugestões de demandas para versões futuras. Com isso é possível elencar prioridades de desenvolvimento por meio das demandas mais votadas pelos membros.

Na nova página de colaboração (primeira versão) os usuários podem enviar quantas sugestões quiserem e consultar as já cadastradas. Nessa página serão inseridos, na sequência, os roadmaps para as futuras versões com as funcionalidades previstas.


  Acessar Página de Colaboração

  Enviar sugestão de melhoria


Contamos com a colaboração de todos!