Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DinhoPHP

[Resolvido] Página não é exibida com require_once

Recommended Posts

Olá! Pessoal, misteriosamente após algumas alterações a página ficou branca, ou seja, simplesmente não é exibida. Por favor me ajudem! Pois é de um cliente. Só funciona se eu inserir o código da header_home2.php no lugar do require, e não desejo isso.

 

Código que chama a header_home2.php

	<?php  
		require_once("include/head.php"); 
	?>
 
	<body>
		<div style="display:none;" class="tips"><?=__FILE__?></div>
		
		<div class="tail-top">   
			<?php
				require_once (DIR_BLOCO . "/header_home2.php");
				//require_once(DIR_BLOCO . "/bloco_busca_topo.php");
			?>
			<div class="ImageTop"> 
				<?php 
				 require_once(DIR_BLOCO . "/bannerhome.php");  
				?>
				<?php require_once(DIR_BLOCO . "/bloco_busca_home.php"); ?>
			</div>
			<div class="mainhome">
				 <?php    
					require_once(DIR_BLOCO . "/autenticacao.php");  
					/*require_once(DIR_BLOCO . "/box_mapa.php");*/    					
					require_once(DIR_BLOCO . "/bloco_anuncios_destaques.php");  
					require_once(DIR_BLOCO . "/bloco_banners_meio.php"); 
					require_once(DIR_BLOCO . "/bloco_cidades_destaque.php"); 
					require_once(DIR_BLOCO . "/bloco_noticias_destaques.php");
					require_once(DIR_BLOCO . "/bloco_botao_anuncie_rodape.php");  
				 ?>  
			</div>
		</div>
		<?php require_once(DIR_BLOCO . "/rodape.php"); ?>
	</body>
</html>

header_home2.php (alterada por mim)

<?php
$sql = "select idpai,id,name,tipo,link,linkexterno,target from category where ( idpai=0 or idpai is null) and zone='group' and display = 'Y' order by sort_order desc";
$rs = mysql_query($sql);

$sqlP = "select status from page where id = 'about_us'";
$rsP = mysql_query($sqlP);
$rowP = mysql_fetch_assoc($rsP);

$sqlA = "select status from page where id = 'about_terms'";
$rsA = mysql_query($sqlA);
$rowA = mysql_fetch_assoc($rsA);
?>

    <div style="display:none;" class="tips"><?=__FILE__?></div>
    <style>
        a{
            color:#fff;
        }
    </style>
    <div class="headertop">
        <div id="header_content" style="height: auto;">

            <div id="header_links" style="background-color: #00307d;">
                <div style="margin-top: 0px; font-size: 13px;color:#ffffff;">
                    <?php if($login_user){ ?>
                        <? if($INI['option']['anunciousuario'] == "Y" ){?>
                            <a  href="<?=$ROOTPATH;?>/adminanunciante/team/edit.php"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN;?>/images/ico_conta.png">  Anunciar Imóvel</a>
                            <a  href="<?=$ROOTPATH;?>/adminanunciante/"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN;?>/images/ico_conta.png">  Meus Anúncios</a>
                        <? } ?>
                        <a href="<?=$ROOTPATH;?>/autenticacao/logout.php"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN;?>/images/ico_off.png"> Sair</a>
                    <?} else {?>
                        <a class='tk_logar' href="#"><img style="width:21px;" src="<?=$PATHSKIN;?>/images/ico_entrar.png">Anunciar Imóvel </a>
                        <a class='tk_logar' href="#"><img style="width:21px;" src="<?=$PATHSKIN;?>/images/ico_entrar.png">Entrar </a>
                        <a class='tk_cadastrar' href="#"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN;?>/images/ico_cadastrar.png">Cadastrar</a>
                    <? } ?>
                </div>

                <a href="#"><img src="<?php echo $PATHSKIN."/images/bs_sistemas_ico.png"; ?>" style="width: 5%;"/></a>

                <div id="anunciar_gratis" style="display: flex; justify-content: space-around; align-items: center; background-color: #f26122; height: 35px; margin-top: -10px; padding-left: 20px; padding-right: 20px; font-size: 0.85em;" class="tips">
                    <a class='tk_logar' href="#" style="color: #ffffff;">Anunciar imóvel Grátis </a>
                </div>

            </div>

            <div class="div_logo">

                <a href="<?=$ROOTPATH;?>">

                    <img class="logotipohome" border="0" src="<?=$ROOTPATH;?>/include/logo/logo.png"/></a>
                <ul>

                    <?php
                    /*while($l = mysql_fetch_assoc($rs)){

                        $tipocategoria = "categorias";
                        $linkid ="";

                        if($l['linkexterno']!=""){*/?>
                    <li class="formata_li parent"><img src="<?php echo $PATHSKIN."/images/ico_entrar.png"; ?>"/><a href="#">HOME</a></li>
                    <li class="formata_li parent"><img src="<?php echo $PATHSKIN."/images/ico_entrar.png"; ?>"/><a href="#">FAVORITOS</a></li>
                    <li class="formata_li parent"><img src="<?php echo $PATHSKIN."/images/ico_entrar.png"; ?>"/><a href="#">AVALIE SEU IMÓVEL</a></li>
                    <li class="formata_li parent"><img src="<?php echo $PATHSKIN."/images/ico_entrar.png"; ?>"/><a href="#">BUSCA NO MAPA</a></li>
                    <li class="formata_li parent"><img src="<?php echo $PATHSKIN."/images/ico_entrar.png"; ?>"/><a href="#">TEMPORADA</a></li>
                </ul>
            </div>
        </div>
    </div>
<?php

header_home2.php  (original)

<div style=" display:none;" class="tips"><?=__FILE__?></div>
<style>
a{
	color:#fff;
}
</style>
<div class="headertop">
	<header style="height:103px;">
		 <div style="float:left;color:#000;margin-top:4px;width:442px;margin-left:122px;">
				<a href="<?=$ROOTPATH?>"><img class="logotipohome" border="0" src="<?=$ROOTPATH?>/include/logo/logo.png"></a>
		 </div>
		 <!-- <div class="viplogo"></div> -->
		 <div style="float: right; margin-top: 8px;margin-right:33px;">
			<div style="margin-top: 0px; font-size: 13px;color:#000">
			 	<?php if($login_user){ ?>
					<? if($INI['option']['anunciousuario'] == "Y" ){?>
						<a  href="<?=$ROOTPATH?>/adminanunciante/team/edit.php"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN?>/images/ico_conta.png">  Anunciar Imóvel</a>
						<a  href="<?=$ROOTPATH?>/adminanunciante/"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN?>/images/ico_conta.png">  Meus Anúncios</a>
					<? } ?>
					<a href="<?=$ROOTPATH?>/autenticacao/logout.php"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN?>/images/ico_off.png"> Sair</a>
				<?} else {?>
					 <a class='tk_logar' href="#"><img style="width:21px;" src="<?=$PATHSKIN?>/images/ico_entrar.png">Anunciar Imóvel </a>
					 <a class='tk_logar' href="#"><img style="width:21px;" src="<?=$PATHSKIN?>/images/ico_entrar.png">Entrar </a>
					 <a class='tk_cadastrar' href="#"><img style="width:21px;margin-left:8px;" src="<?=$PATHSKIN?>/images/ico_cadastrar.png">Cadastrar</a>
				<? } ?>
			</div>
		 </div>
	</header>
</div>
 <?php  

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode ser muita coisa, vamos por partes:

Acho que deve ser nas instruções mysql, mas antes de qualquer coisa, habilite a exibição de erros. A página está em branco provavelmente pelo fato de que algum erro está ocorrendo e não sabemos qual é.

error_reporting( E_ALL );//na página principal, que faz os require

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Matheus Tavares disse:

Pode ser muita coisa, vamos por partes:

Acho que deve ser nas instruções mysql, mas antes de qualquer coisa, habilite a exibição de erros. A página está em branco provavelmente pelo fato de que algum erro está ocorrendo e não sabemos qual é.


error_reporting( E_ALL );//na página principal, que faz os require

 

Muito obrigado Matheus, verei agora!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Engraçado nenhum erro ter aparecido. Então faça isso para testarmos mais a fundo:

 

Na primeira linha do seu header_home2.php, antes de qualquer coisa, coloque:

<?php
error_reporting( E_ALL );//habilitamos a exibição de erros
echo 'inicio';//se aparecer na tela, esse arquivo foi carregado com sucesso
?>

 

E na última linha coloque:

<?php echo 'fim'; //se aparecer na tela, o arquivo terminou sua execução ?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
5 minutos atrás, Matheus Tavares disse:

Engraçado nenhum erro ter aparecido. Então faça isso para testarmos mais a fundo:

 

Na primeira linha do seu header_home2.php, antes de qualquer coisa, coloque:


<?php
error_reporting( E_ALL );//habilitamos a exibição de erros
echo 'inicio';//se aparecer na tela, esse arquivo foi carregado com sucesso
?>

 

E na última linha coloque:


<?php echo 'fim'; //se aparecer na tela, o arquivo terminou sua execução ?>

 

Beleza, início apareceu mas fim não. coloquei o fim na última linha após o </html>, está correto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse bloco mysql também tirei, mas não funcionou. Só não insiro o header_home.php na principal, por estética e por já ter estilizado a parte de cima da home.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo... o fato é que o script começa a rodar, encontra algum problema e finaliza sua execução, mas estranhamente não exibe nenhuma mensagem de erro.

 

Além disso, posso estar enganado, mas imagino que você esteja usando alguma framework ou lib por trás que esteja controlando o buffer da resposta, como alguma template engine, pois é incomum o echo que fizemos aparecer na primeira linha do código-fonte gerado, uma vez que o echo foi feito no meio da execução do script.

 

Você precisa dar um jeito de habilitar a exibição (ou log) dos erros. Veja: https://stackoverflow.com/questions/3531703/how-to-log-errors-and-warnings-into-a-file

Sem os erros, fica difícil ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, Matheus Tavares disse:

Certo... o fato é que o script começa a rodar, encontra algum problema e finaliza sua execução, mas estranhamente não exibe nenhuma mensagem de erro.

 

Além disso, posso estar enganado, mas imagino que você esteja usando alguma framework ou lib por trás que esteja controlando o buffer da resposta, como alguma template engine, pois é incomum o echo que fizemos aparecer na primeira linha do código-fonte gerado, uma vez que o echo foi feito no meio da execução do script.

 

Você precisa dar um jeito de habilitar a exibição (ou log) dos erros. Veja: https://stackoverflow.com/questions/3531703/how-to-log-errors-and-warnings-into-a-file

Sem os erros, fica difícil ajudar.

Acertou! Template, pois estou modificando o site conforme o cliente fez por imagem, só que notei que o site roda sob um template. Aonde provavelmente está dando o erro. Esse site foi uma empresa que fez e ele comprou, mas os códigos dele estão muito zoados, nota-se que nem PDO usa. rs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Matheus, recorri ao suporte do cliente e até fiquei com vergonha kkkkkk era uma tag php aberta no fim do arquivo. Provavelmente ficou e eu a interpretei como uma "extensão" para outro arquivo. O engraçado que ela estava ali antes e não dava erro, mas enfim, problema sanado. Agora,  como marco esse tópico como resolvido? Abração e obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
    • Por First
      Olá a todos!
       
      Quando eu tento fazer o login me mostra esse erro "Could not log you in."; Alguém sabe me ajudar a resolver esse problema no meu código?
      <?php require_once("core/init.php"); if (Input::exists()) { if (Token::check(Input::get("token"))) { $validate = new Validate(); $validation = $validate->check($_POST, array( "username" => array("required" => true), "password" => array("required" => true) )); if ($validation->passed()) { $user = new User(); $remember = (Input::get("remember")) === "on" ? true : false; $login = $user->login(Input::get("username"), Input::get("password"), $remember); if ($login) { Session::flash("home", "Welcome back!"); Redirect::to("index.php"); } else { echo "Could not log you in."; } } else { foreach ($validation->errors() as $error) { echo $error."<BR>"; } } } } ?> <form action="" method="POST"> <div class="field"> <label for="username">Username</label> <input type="text" name="username" id="username"> </div> <div class="field"> <label for="password">Password</label> <input type="password" name="password" id="password"> </div> <div class="field"> <label for="remember"> <input type="checkbox" name="remember" id="remember"> Remember me </label> </div> <input type="hidden" name="token" value="<?php echo Token::generate(); ?>"> <input type="submit" value="Log in"> </form>  
       
      Desde já obrigado.
    • Por ckcesar
      Eu tenho uma aplicação no zend com a versão 5.6 e com o postgresql 9.6. Agora eu precisei mudar a versão do meu postgresql para o 16.1, a parte de conexão do bd e consultas sqls funciona perfeitamente, o meu problema está para acessar os meus controllers. Eles não são encontrados em nenhuma rota, quero ver se alguém já passou por esse problema para me ajudar. Obrigado.
    • Por ILR master
      Fala galera, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.