marcel_br 0 Denunciar post Postado Junho 11, 2011 Bem pessoal baixei um curso de php muito bom porém, com um unico erro. devido ao curso ser um pouco antigo, talvez o codigo php, abaixo esteje dando erro, pois no professor da video aula roda sem nenhum erro. <?php$pgatual = strtolower(end(explode('/', $_GET[topicos]))); ?> <title>UpInside | <?php echo $pgatual;?></title> Esse codigo está dando erro já tentei mudar, tentei tirar o end, o explode, não sei o mais o que fazer =( se algum puder me passar algum link de tutorial ou alguma dica de como arrumar o meu problema ficaria extremamente grato! Compartilhar este post Link para o post Compartilhar em outros sites
Victor Cometti 8 Denunciar post Postado Junho 11, 2011 E qual é o erro? Compartilhar este post Link para o post Compartilhar em outros sites
marcel_br 0 Denunciar post Postado Junho 12, 2011 Ele simplismente fala que o código da linha 6 que aquele lá. é errado. Como disse não sei se é algum erro meu no codigo ou se é meu php que é mais novo. pois no cara da video aula funciona 100%, e parece que não é só aqui o erro parece que muita gente tambem está tendo o mesmo erro Porem ninguem esclareceu o problema procurei no google, alguam solução e não achei nada... PS: esse codigo é pra aparecer o titulo da pagina dinamicamente, porem ele da erro e só se eu clicar nos links ele muda o nome, se eu ficar na index o nome fica errado. Compartilhar este post Link para o post Compartilhar em outros sites
Victor Cometti 8 Denunciar post Postado Junho 12, 2011 não vi nenhum erro aparentemente a não ser que o $_GET[topicos] usa-se $_GET['tópicos'] de qualquer forma usa assim <?php $pgatual = isset($_GET['topicos']) ? strtolower(end(explode('/', $_GET['topicos']))) : "Sem título"; ?> <title>UpInside | <?php echo $pgatual;?></title> pode ser que não está sendo passado nada pela URL Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Junho 12, 2011 Exato Victor, esse é o problema. Deixe-me explicar o porquê. Cada palavra, símbolo ou número programado é denominado token, existe uma seção do Manual destinada a listá-los. Pois bem, quando o interpretador "lê" seu código, vai tentar interpretá-lo, token por token. Acontece que quando ele encontra algo que DEVERIA ser uma T_CONSTANT_ENCAPSED_STRING, isto é, string encapsulada entre aspas, e encontra tudo exceto as aspas, ele define como sendo uma constante e justamente por isso na seção geral sobre arrays (já que $_GET nada mais é do um array superglobal), logo no primeiro item de Array do's and dont's (Arrays - Faça e não faça) há a explicação Why is $foo[bar] wrong? (Por que $foo[bar] é errado)? Resumindo: Quando você fez $_GET[topicos] o interpretador procurou por uma constante topicos dentro do array superglobal $_GET Se você fizesse: define( 'topicos', 'algum valor' ); echo $_GET[topicos]; Não seria exibido esse erro, porém, caso nesse array superglobal não existisse um índice chamado alguma coisa, que é o valor da constante, haveria um outro tipo de erro, de menor impacto pois seria apenas um lembrete (E_NOTICE) d tipo Undefined index, istoé, índice indefinido. Certinho? Compartilhar este post Link para o post Compartilhar em outros sites