null2007 1 Denunciar post Postado Maio 31, 2012 Olá pessoal, estou com o seguinte problema: 1º) No meu PC, estou utilizando as seguintes versões do XAMMP e PHP: * XAMPP para Windows Version 1.7.1 * PHP Version 5.2.9 2º) E no momento em que acesso a página(link) NO MEU PC, acessa normalmente. Porém, ao hospedar, quando tento acessar me deparei com o seguinte erro: Parse error: syntax error, unexpected ';', expecting T_FUNCTION in /home/alisonbe/public_html/admin/_class/Cad-Agenda.php on line 1 No arquivo aonde ocorre o erro, está o seguinte cód fonte: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br"> <?php require_once "admin/_class/Conexao.php"; require_once "admin/_class/Cad-Agenda.php"; $Agenda = new Agenda; require_once "admin/_class/app.tools.php"; $Tools = new Tools; $ano_link = date("Y"); ?> <?php require_once 'app.head.php'; ?> <body> <div id="topo"></div> <div id="topo01"> <div id="topo01-center"> <div id="logo"> <img src="_img/logo.png" title="TESTE" alt="TESTE" width="580" height="60" /> </div> </div> </div> <div id="topo02"> <div id="topo02-center"> <?php require_once 'app.menu.php'; ?> </div> </div> <div id="topo03"> <div class="corpo-pag"> <div class="tit-pag"> <img src="_img/tit-agenda.png" title="Agenda <?=$ano?>" alt="Agenda <?=$ano?>" width="60px" height="18px" /> <div class="new-menu-meses"> <ul> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=12"><img src="_img/menu-dezembro.png" title="Dezembro" alt="Dezembro" width="53" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=11"><img src="_img/menu-novembro.png" title="Novembro" alt="Novembro" width="56" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=10"><img src="_img/menu-outubro.png" title="Outubro" alt="Outubro" width="50" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=09"><img src="_img/menu-setembro.png" title="Setembro" alt="Setembro" width="53" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=08"><img src="_img/menu-agosto.png" title="Agosto" alt="Agosto" width="42" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=07"><img src="_img/menu-julho.png" title="Julho" alt="Julho" width="32" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=06"><img src="_img/menu-junho.png" title="Junho" alt="Junho" width="34" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=05"><img src="_img/menu-maio.png" title="Maio" alt="Maio" width="26" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=04"><img src="_img/menu-abril.png" title="Abril" alt="Abril" width="30" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=03"><img src="_img/menu-marco.png" title="Março" alt="Março" width="37" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=02"><img src="_img/menu-fevereiro.png" title="Fevereiro" alt="Fevereiro" width="51" height="12" /></a></li> <li><a href="reload.php?load=agenda&ano=<?=$ano_link?>&mes=01"><img src="_img/menu-janeiro.png" title="Janeiro" alt="Janeiro" width="40" height="12" /></a></li> </ul> </div> </div> <div id="all-agenda"> <div class="nm-mes"> <img src="_img/ico-dica.png" title="Dica" alt="Dica" width="14px" height="24px" style="margin-right:10px" /> <?php $mes = $Tools->allMesBr($_GET['mes']); print"Você esta em: $mes"; if($mes == ""){ print"Selecione um mês por favor."; } ?> </div> <?php $ano = $_GET['ano']; $i = 0; foreach($Agenda->getAllAgenda($ano) as $resultado ){ $cor = ($i%2==0) ? '' : ''; ?> <div class="view-agenda"> <div class="view-agenda-top"> <div class="view-agenda-dt"> <div class="view-agenda-dt-num"><?php print $resultado->dia_mes ?></div> <div class="view-agenda-dt-ini"><?php print Tools::breveDescricao($Tools->allMesBr($_GET['mes']), 0)?></div> </div> <div class="view-agenda-local"><?php print $resultado->cidade ?>/<?php print $resultado->estado ?></div> </div> <div class="view-agenda-all"> <table border="0"> <tr> <td class="col-esq">Evento:</td> <td class="col-dir"><?php print $resultado->evento ?></td> </tr> <tr> <td class="col-esq">Igreja:</td> <td class="col-dir"><?php print $resultado->igreja ?></td> </tr> <tr> <td class="col-esq">Local:</td> <td class="col-dir"><?php print $resultado->local ?></td> </tr> <tr> <td class="col-esq">Endereço:</td> <td class="col-dir"><?php print $resultado->endereco ?></td> </tr> <tr> <td class="col-esq">Pr.Presidente:</td> <td class="col-dir"><?php print $resultado->pr_presidente ?></td> </tr> <tr> <td class="col-esq">Contato:</td> <td class="col-dir"><?php print $resultado->contato ?></td> </tr> <tr> <td class="col-esq">Fone:</td> <td class="col-dir"><?php print $resultado->fone ?></td> </tr> <tr> <td class="col-esq">Horário:</td> <td class="col-dir"><?php print $resultado->horario ?></td> </tr> <tr> <td class="col-esq">Dia/Semana:</td> <td class="col-dir"><?php print $resultado->dia_semana ?></td> </tr> </table> </div> </div> <?php $i++; } ?> </div> </div> <div class="bg-rodape-pag"></div> </div> <?php require_once 'app.rodape.php'; ?> </body> </html> No arquivo(classe) Cad-Agenda.php, consta o seguinte código fonte: <?php class Agenda { ################## #campos da tabela# ################## #Cadastro de colunas private $cd_coluna; private $ano; private $mes; private $dia_semana; private $dia_mes; private $evento; private $igreja; private $cidade; private $local; private $estado; private $endereco; private $pr_presidente; private $contato; private $fone; private $horario; private $situacao; public $paginas = "50"; public $paginaAtual; protected $sql; private $tblAgenda = "agenda"; private $pkAgenda = "cd_agenda"; function __construct() { $this->sql = Conexao::conecta(); } /* Métodos Set */ public function setAno($ano) { $this->ano = $ano; } public function setMes($mes) { $this->mes = $mes; } public function setDia_semana($dia_semana) { $this->dia_semana = $dia_semana; } public function setDia_mes($dia_mes) { $this->dia_mes = $dia_mes; } public function setEvento($evento) { $this->evento = $evento; } public function setIgreja($igreja) { $this->igreja = $igreja; } public function setCidade($cidade) { $this->cidade = $cidade; } public function setLocal($local) { $this->local = $local; } public function setEstado($estado) { $this->estado = $estado; } public function setEndereco($endereco) { $this->endereco = $endereco; } public function setPr_presidente($pr_presidente) { $this->pr_presidente = $pr_presidente; } public function setContato($contato) { $this->contato = $contato; } public function setFone($fone) { $this->fone = $fone; } public function setHorario($horario) { $this->horario = $horario; } public function setSituacao($situacao) { $this->situacao = $situacao; } /* Métodos Get Set */ public function getCd_coluna() { return $this->cd_coluna; } public function getAno() { return $this->ano; } public function getMes() { return $this->mes; } public function getDia_semana() { return $this->dia_semana; } public function getDia_mes() { return $this->dia_mes; } public function getEvento() { return $this->evento; } public function getIgreja() { return $this->igreja; } public function getCidade() { return $this->cidade; } public function getLocal() { return $this->local; } public function getEstado() { return $this->estado; } public function getEndereco() { return $this->endereco; } public function getPr_presidente() { return $this->pr_presidente; } public function getContato() { return $this->contato; } public function getFone() { return $this->fone; } public function getHorario() { return $this->horario; } public function getSituacao() { return $this->situacao; } /* Método 2 que add agenda*/ public final function addAgenda($VARS) { if ($this->sql->insertSQL($VARS, $this->tblAgenda)) { return true; } else { return false; } } public final function doUpdate($VARS) { if ($VARS["senha"] == "") { unset($VARS["senha"]); } else { $VARS["senha"] = md5($VARS["senha"]); } return $this->sql->updateSQL($VARS, $this->tblAgenda, $this->pkUsuarios); } public final function doDeleteAgenda($cd_agenda) { $this->sql->query("UPDATE " . $this->tblAgenda . " SET situacao = '2' WHERE cd_agenda = $cd_agenda "); } public final function doDelete($cd_usuario) { $this->sql->query("UPDATE " . $this->tblUsuarios . " SET situacao = '2' WHERE cd_usuario = '$cd_usuario' "); } /* Método que retorna a agenda*/ public final function getAllAgenda($ano){ $tmp = array(); $mes = $_GET['mes']; $consulta = $this->sql->query("SELECT * FROM ".$this->tblAgenda." WHERE ano = $ano AND mes = $mes AND situacao = 1"); while($dados = $this->sql->fetchObject($consulta)){ array_push($tmp,$dados); } return $tmp; } } ?> Em conversa com o pessoal de onde faço a hospedagem do site, afirmei que era erro de incompatibilidade de versão do PHP. Então fui questionado qual a versão que estava utilizando(mencionado acima). Aí me disseram: Verifique com o desenvolvedor da aplicação se ela é compatível com o PHP 5.3. Se não for, podemos mover seu site para um plano com o PHP 5.2. Minha dúvida é: 1º) Aonde está o erro e porque ele ocorre. É problema de versão? 2º) Como posso corrigir? (havendo em consideração que não deveria ocorrer o erro pois a versão utilizada aonde hospedo é mais recente que a que utilizo) HELP! :huh: Compartilhar este post Link para o post Compartilhar em outros sites
Gabriel Heming 766 Denunciar post Postado Maio 31, 2012 Seu problema não é bem no código, pelo o que eu pude perceber. Mas é também no código.... Deixa eu explicar Veja bem. O arquivo Cad-Agenda.php começa assim: <?php class Agenda { O erro diz que é na linha 1... Não há nada na linha 1!!!!!!! Então como ocorre o erro na linha 1???? Simples. O servidor provavelmente utiliza alguma técnica de compactação de código, transformando seu código todo apenas em uma linha. E o que seu código tem haver com isso? São os comentários. Melhor eu mostrar que falar.... <?php class Agenda { ################## #campos da tabela# ################## #Cadastro de colunas private $cd_coluna; Veja bem, seu script é (e muito bem) formatado e indentado. Entretanto, o uso de # ou // para comentários tem um problema. Ele referencia como comentário toda uma linha. Logo, o script se torna: <?php class Agenda { ################## #campos da tabela# ################## #Cadastro de colunas private $cd_coluna; E sua private $cd_coluna; se tornou um comentário. Basta você substituir os comentários para o padrão limítrofe /* */; <?php class Agenda { /* campos da tabela Cadastro de colunas */ private $cd_coluna; No servidor ficará assim: <?php class Agenda { /* campos da tabela Cadastro de colunas */ private $cd_coluna; Imagino que esse seja seu problema. Outro pode ser que, quando upado o arquivo, o servidor altere-o. Você teria de editá-lo online e inserir o seu código diretamente no arquivo do servido. Falo isso de experiência própria, em ambos os casos. Compartilhar este post Link para o post Compartilhar em outros sites
null2007 1 Denunciar post Postado Maio 31, 2012 Caramba Gabriel Heming, você é o cara!!! kkkkkkkkkkkkkk :clap: :clap: :clap: Deu certo mano, era bem isto mesmo!! Mew, que coisa. Quebrei a cabeça dois dias com isto até resolver vir pedir ajuda kkkkkkkk :grin: Já estava até meio zonzo :wacko: kkkkkkk Mano, vlw msm heim! Forte abraço! Espero que futuramente este tópico ajude muita gente rs! Compartilhar este post Link para o post Compartilhar em outros sites