+ Responder ao Tópico



  1. #1

    Padrão PHP5 x PHPBB

    galera é o seguinte talves este tópico não nada haver com o area correpondente, ma precio de uma ajuda de quem conhece php.

    é o sequinte estou com o um site montando em phpnuke, até então funcionando que uma maravilha, dae então o servidor passou por alterações na versão do php de php4 para o php5, então começou o meu problema não consigo postar nada no forum, devido há esta atualização, se alguem puder me dar uma força ae nito fico grato.

  2. #2

    Padrão PHP5 x PHPBB

    Você chegou a identificar onde está o problema?

    O que exatamente não funciona?
    Variaveis não estão sendo passadas corretamente?


    Falou!

  3. #3

    Padrão PHP5 x PHPBB

    Citação Postado originalmente por mvzeppelin
    Você chegou a identificar onde está o problema?

    O que exatamente não funciona?
    Variaveis não estão sendo passadas corretamente?


    Falou!
    este e o erro que ocorre qdo tento mandar um post no forum

    Fatal error: Only variables can be passed by reference in /home/dedlin/public_html/modules/Forums/posting.php on line 569

  4. #4

    Padrão PHP5 x PHPBB

    Humm,

    Confirma se a versão do php é a 5.0.5 .

    Duas coisas que você pode tentar:
    - Alterar a diretiva allow_call_time_pass_reference do php para on
    - Voltar o PHP para 5.0.4 (talvez resolva).

    A terceira seria procurar no suporte da phpNuke, mas eu acho que vc não vai encontrar nada de útil la.

    Falou!

  5. #5

    Padrão PHP5 x PHPBB

    Citação Postado originalmente por mvzeppelin
    Humm,

    Confirma se a versão do php é a 5.0.5 .

    Duas coisas que você pode tentar:
    - Alterar a diretiva allow_call_time_pass_reference do php para on
    - Voltar o PHP para 5.0.4 (talvez resolva).

    A terceira seria procurar no suporte da phpNuke, mas eu acho que vc não vai encontrar nada de útil la.

    Falou!
    então colega, até poderia voltar para a versão php4, mas a questão que este serve naum sou eu que administro, entende. vou tentar esta allow_call_time_pass_reference.

  6. #6
    eyglys
    Visitante

    Padrão erro na programação

    LinuxKids, o problema está na programação do PHPNuke.
    Abra o arquivo /home/dedlin/public_html/modules/Forums/posting.php na linha 569.

    Provavelmente exista alguma função sendo chamada (função ou método). O erro informa que está dizendo que somente variáveis podem ser passadas por referência.

    O que pode estar acontecendo é passar uma constante ou o valor null.

    Exemplo:
    Código :
    function testeReferencia(&$var) {
      $var *= 10;
    }
     
    $v = null;
    define("TESTE",2390);
     
    testeReferencia(null);
    testeReferencia(TESTE);

    No código acima irá acontecer o mesmo erro que ocorreu no seu phpnuke. Pois não é possível passar por referência o valor null nem uma constante

  7. #7

    Padrão Re: erro na programação

    Citação Postado originalmente por eyglys
    LinuxKids, o problema está na programação do PHPNuke.
    Abra o arquivo /home/dedlin/public_html/modules/Forums/posting.php na linha 569.

    Provavelmente exista alguma função sendo chamada (função ou método). O erro informa que está dizendo que somente variáveis podem ser passadas por referência.

    O que pode estar acontecendo é passar uma constante ou o valor null.

    Exemplo:
    Código :
    function testeReferencia(&$var) {
      $var *= 10;
    }
     
    $v = null;
    define("TESTE",2390);
     
    testeReferencia(null);
    testeReferencia(TESTE);

    No código acima irá acontecer o mesmo erro que ocorreu no seu phpnuke. Pois não é possível passar por referência o valor null nem uma constante
    como poderia solucionar este problema colega

  8. #8
    eyglys
    Visitante

    Padrão php

    Olhe a linha que está sendo indicada no erro.

    Caso exista um valor null, constante ou até mesmo função, proceda da seguinte forma:
    Código :
    function teste(&$var) {
    	$var *= 10;
    }
     
    function teste2() {
    	return 10;
    }
     
    define("CONSTANTE",40);
     
    teste(null); //linha com erro
    teste(CONSTANTE); //linha com erro
    teste(teste2()); //dependendo do valor de retorno de teste2(), pode exibir erro
     
    //Como solucionar:
    $varqualquer1 = null;
    teste($varqualquer1); //não exibe msg de erro
     
    $varqualquer2 = CONSTANTE;
    teste($varqualquer2); //não exibe msg de erro
     
    $varqualquer3 = teste2();
    teste($varqualquer3); //não exibe msg de erro

    Lembro, que a função pode ter vários parâmetros (é o que geralmente ocorre com o phpnuke)

    Portanto, procure qual parâmetro está sendo passado de forma errada e corriga da forma mostrada acima (declara uma variável com o valor, e depois passa o parâmetro)[/code]