Ir para conteúdo

Arquivado

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

WAD - Soluções

Paginação não muda quando esta no servidor web.

Recommended Posts

Olá, Pessoal gostaria da ajuda de para resolver.

No meu servidor local, sistema de paginação funciona sem problemas, já quando esta no servidor web, quando solicito mudança de pagina sempre fica na primeira as informações mais a url muda.

 

Link: http://hotbr.com.br/bg/ver_noticias.html

 

Php Info: http://hotbr.com.br/bg/info.php

<?php
$tabela1 = "tb_noticias";
//MOSTRA TODAS NOTICIAS DO SITE
if($acao == "ver_todas"){
	if(!empty($limite2)){
	$limite2 = "LIMIT $limite2";
	}
$busca = "SELECT * FROM $tabela1 WHERE status='S' $ordem";
//echo $busca;
	if($paginacao == "S"){
		$total_reg = "10";
		if(!$page){
		$page = "1";
		}
		$inicio = $page-1;
		$inicio = $inicio*$total_reg;
		$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
	} else {
		$limite = mysql_query("$busca $limite2");
	} 
$todos = mysql_query("$busca");
$tr = mysql_num_rows($todos);
$tp = @ceil($tr / $total_reg);
if($tr > 0){
	
?>

 

executar paginador.

<?
if($page > 1){
$anterior = $page -1;
$url = "?page=$anterior";
echo "<li class='pager-navi'><a href='$url' class='icon-text'></a></li>";
} else {
echo "";
}
?>       				
           				
<? 
for($x=1; $x<=$tp; $x++){
$url = "page=$x";
  if ($x==$page) {
	echo "<li class='active'><a href='#'>$x</a></li>";
	  } else {
  echo "<li><a href='?$url'>$x</a></li>";
  }
} 
?>
<?
if($tp > $page){
$proxima = $page +1;
$url = "?page=$proxima";
echo "<li class='pager-navi'><a href='$url' class='icon-text'></a></li>";
} else {
echo "";
}
?>
		

Compartilhar este post


Link para o post
Compartilhar em outros sites

aqui em vez de ser

<? 
for($x=1; $x<=$tp; $x++){
$url = "page=$x";
  if ($x==$page) {
	echo "<li class='active'><a href='#'>$x</a></li>";
	  } else {
  echo "<li><a href='$url'>$x</a></li>";
  }
} 
?>

não era para ter um ?page=$x

 

<? 
for($x=1; $x<=$tp; $x++){
$url = "?page=$x";
  if ($x==$page) {
	echo "<li class='active'><a href='#'>$x</a></li>";
	  } else {
  echo "<li><a href='?$url'>$x</a></li>";
  }
} 
?>

 

 

nossa desconsidere, não reparei no ?$url

Compartilhar este post


Link para o post
Compartilhar em outros sites

As variáveis estão vindo de onde? $_GET/$_POST? Se sim você deve resgatar, pois ao que parece no seu servidor register_globals está desativado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

_________________________________________________________________________

esta faltando

 

$page = $_GET['page'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caros, Desculpa só meio novato, peguei este script já pronto.

Erison,

Obrigado pela ajuda, mais não deu certo.

 

ESerra,
Mesmo ativando register_globals on, não da certo.

<?php
$variables=(strtolower($_SERVER['REQUEST_METHOD'])== 'GET') ? $_GET : $_POST;
foreach ($variables as $k=> $v)
$$k=$v;
$tabela1 = "tb_noticias";
$tabela2 = "tb_users";
$file = "$tabela1";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você ativou register_globals no servidor de produção? Como exatamente você fez isto? Qualquer servidor +/- não vai permitir a você fazer este tipo de coisa...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desative o register_globals, é extremamente recomendado deixá-lo desativado. Seu problema deve ter outra solução. Ele retorna algum erro para você? Veja na URL se ele está alterando a página quando você passa o mouse em cima da paginação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desativar o register_globals, não vou fazer tava lento sobre ele não e legal ter ele ativado com status on.

Pedro,
Link de teste para paginação, não reposta erros apenas de imagens que não estão no servidor. Acredito que tenho que fazer um nova classe para paginação. vou posta todo o script aqui.

 

http://hotbr.com.br/bg/ver_noticias.html?page=2

 

 

<?php
$variables=(strtolower($_SERVER['REQUEST_METHOD'])== 'GET') ? $_GET : $_POST;
foreach ($variables as $k=> $v)
$$k=$v;
$tabela1 = "tb_empregos";
$file = "empregos";
// INICIO DA ACAO VER ULTIMAS
if($acao == "listar"){
	if(!empty($limite2)){
	$limite2 = "LIMIT $limite2";
	}
$busca = "SELECT * FROM $tabela1 WHERE status='S' $ordem";
//echo $busca;
	if($paginacao == "S"){
		$total_reg = 1;
		if(!$page){
		$page = "1";
		}
		$inicio = $page-1;
		$inicio = $inicio*$total_reg;
		$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
	} else {
		$limite = mysql_query("$busca $limite2");
	} 
$todos = mysql_query("$busca");
$tr = mysql_num_rows($todos);
$tp = @ceil($tr / $total_reg);
if($tr > 0){
?>
							<div class="content-blog">
								<div class="content-blog-right">
<?
// Agora vamos montar o código. Pegue o valor total de resultados: 
$total = mysql_num_rows($limite); 
// Defina o número de colunas que você deseja exibir: 
//$colunas = "3"; 
//$colunas = "$qts_colunas"; 
// Agora vamos ao "truque": 
if ($total>0) { 
for ($i = 0; $i < $total; $i++) { 
if (($i%$colunas)==0) { 
$colspan = $colunas+$colunas+$colunas;
?>
 <? }?>
<? $dados = mysql_fetch_array($limite) ; ?>
<div class="article-block-small-image">
									<!--	<div class="article-header">
<h3>titulo</h3>
	</div> !-->
							<div class="article-content">
							<div class="article-text">
<?php echo "<font size='3' color='#C9168E' style='text-transform:uppercase;'><strong>$dados[nome]</strong></font><br />"?>
<?php
		$contatamanho2 = strlen($dados[descricao]);
		if($contatamanho2 > $qt_letras2){
		$descricao = substr_replace($dados[descricao], "...", $qt_letras2, $contatamanho2 - $qt_letras2);
		} else {
		$descricao = $dados[descricao];
		}

#		echo "<font style='text-transform:uppercase;'> - $titulo</font><br>";
		echo "<font size='2' color='#b3b3b3'>$descricao</font>";
?><br />
									<a href="<?="ver_empregos/$dados[id]";?>/<?php $url = "($dados[nome])"; utf8_decode($url); echo removeAcentos($url, '-'); ?>.html" class="button"><span>Ver Detalhes</span></a>
</div>
									</div>
									</div>

    <? }?>
  <? }?>
</div>
</div>
<?
// INICIO DA PAGINAÇÃO
if($paginacao == "$paginacao"){
	include "paginas/paginacao.php";
}
// FIM DA PAGINAÇÃO
?>
<? } else {?>
Você realizou busca com a palavra chave, <span class="t-2"><? echo $palavra ?></span> não encontramos informações sobre este assunto em <span class="t-2"><b>Empregos</b></span>.
<?
} // FIM DO ELSE
} // FIM DA ACAO VER ULTIMAS
?>  

 


Paginador: paginacao.php

<div class="content-pager">
					<ul>
<? 
for($x=1; $x<=$tp; $x++){
$url = "page=$x";
  if ($x==$page) {
	echo "<li class='active'><a href='#'>$x</a></li>";
	  } else {
  echo "<li><a href='?$url'>$x</a></li>";
  }
} 
?>
								</ul>
							</div>	

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • André Luiz_168079, vou viu meu post #4?

não vie em seu codigo esse:

 

$page = $_GET['page'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

A sugestão que vou dar parece ser meio boba, mas...

 

os dados no teu servidor remoto(produção) estão "sincronizados" com o teu servidor local (mesma quantidade de registros) ?

 

ou também pode ser que algum arquivo que esteja em teu servidor local não esteja ou não está adaptado em teu servidor remoto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Erison,

Vi sim minha dúvida, como falei no inicio só muito novato em programação, eu travo em algumas coisa, onde colocar, como chamar esta variável para resolver o problema? Você consegui me orientar.

 

GCAS,

Conforme mostre o link, você pode observar que todos dados estão sincronizado, problema que so mostra um dado não mostra os dados que deveria aparecer na outras paginas.

 

 

  • André Luiz_168079, vou viu meu post #4?

não vie em seu codigo esse:

 

$page = $_GET['page'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara você sabe a diferença entre $_GET, $_POST E $_REQUEST?

caso não entenda e saiba o que esta fazendo, e não só copie e cole.

 

isso

$page = $_GET['page'];

fica no inicio da pagina da paginação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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