Ir para conteúdo

POWERED BY:

Arquivado

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

jpmega_guitar

Problemas no mysql_num_rows

Recommended Posts

Olá pessoal, sou iniciante em php. Estou fazendo uma página de administração pra um site, e pra descobrir quem alterou determinado conteúdo, resolvi criar um LOG pra registrar tudo que os ADM e os MOD fazem no site. Bom, está tudo indo bem, ele está registrando e paginando tudo certinho, exceto uma doidera que houve na hora de contar os resultados, coloquei o limite de 1 registro por página, apenas para testar, tenho 2 registros no banco, está criando 2 páginas, cada uma com um registro, porém está assim aparecendo assim Foram encontrados 1 registros, dividos em 2 páginas. Ou seja, era pra ter 2 registros e não 1, eu já tentei passar a variavel $countTudo (

A responsável por armazenar o mysql_num_rows) Pelo link da paginação:

echo "<a id='wfrgt24w' href='alteracoesDoSistema.php?=$voltarPage&".$countTudo."'>Voltar</a>     ";
echo "<a id='wfrgt24w' href='alteracoesDoSistema.php?=$avancarPage&$".$countTudo."'>Avançar</a>";

Porém dá a mesma coisa, podem me ajudar?

 

 

 

Quase esqueço rsrs, esse é o código da página:

<?php
   include "C://wamp/www/mysql_connect_server.php";
?>
<html>
<head>
     <meta charset="utf-8" />
     <meta name="robots" content="noindex" />
	 <title>Histórico de alterações do sistema</title>
	 <link rel="stylesheet" type="text/css" href="rgerj9384th42t349ghgerire.css" />
</head>
<body>
<center>
 <table id='rfegt435r'>
							               <tr>
										   <td id='ger2312q'>ALTERAÇÃO:</td>
										   <td id='ger2312q'>USUÁRIO:</td>
										   <td id='ger2312q'>HORA:</td>
										   <td id='ger2312q'>DATA:</td>
										   </tr>
<?php

	
     #REGISTRO DE ALTERAÇÕES DO SISTEMA
	 session_start();
	 if(($_SESSION['tipoAdmUser']) == "Administrador"){
	 
	             $pagina = (isset($_GET['pagina']))? $_GET['pagina'] : 1;
	 
				$historicoSelect = "SELECT * FROM historicoalteracoessistema ORDER BY dataAlteracao,horaAlteracao DESC";
				$executHistory = mysql_query($historicoSelect);
			    $countTudo = mysql_num_rows($executHistory);
			    $countNuns = 0;
				
				        $numRegistros = 2;
						$numPages = ceil($countTudo/$numRegistros);
						$inicio = ($numRegistros*$pagina)-$numRegistros;
						
						   $historicoSelect = "SELECT * FROM historicoalteracoessistema ORDER BY dataAlteracao,horaAlteracao DESC LIMIT $inicio,$numRegistros";
						   $executHistory = mysql_query($historicoSelect);
			               $countTudo = mysql_num_rows($executHistory);
						 
						   
						       if($countTudo > 0){
							               
							              echo "<span>Foram encontrados ".$countTudo."registros, dividos em ".$numPages." páginas.</span>";
							         while($resultsHistory=mysql_fetch_array($executHistory)){
									       echo "<tr>";
									       echo "<td id='jig94fe3'>".$resultsHistory['alteracao']."</td>";
									       echo "<td id='jig94fe3'>".$resultsHistory['quemAlterou']."</td>";
								           echo "<td id='jig94fe3'>".$resultsHistory['horaAlteracao']."</td>";
					                       echo "<td id='jig94fe3'>".$resultsHistory['dataAlteracao']."</td>";
										   echo "</tr>";
									 }
									 
									      $avancarPage = + 1;
										  $voltarPage = - 1;
										
										  if($numPages > 1){
										         
										            echo "<a id='wfrgt24w' href='alteracoesDoSistema.php?=$voltarPage&".$countTudo."'>Voltar</a>     ";
													echo "<a id='wfrgt24w' href='alteracoesDoSistema.php?=$avancarPage&$".$countTudo."'>Avançar</a>";
										  }
							   
							   }
							   
						   else{
						       echo "Nenhum registro encontrado.";
						   }
					      
						  
						  
																		  
					  
																				 
            }
			
		 else{
		     print "Você não tem permissão para visualizar essa área.";
			 header("Location:C://wamp/www/adms/34656643646466_343454545/gerrh45yh452t34tqt2/pageAdmMain.php");
		 }
      	 
	 
	


?>
</table>
</center>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testa o num_rows sozinho, sem essa página.

Por exemplo:

?php
   include "mysql_connect_server.php";

	 
				$historicoSelect = "SELECT * FROM historicoalteracoessistema ORDER BY dataAlteracao,horaAlteracao DESC";
				$executHistory = mysql_query($historicoSelect);
			    $countTudo = mysql_num_rows($executHistory);
 echo $countTudo;
?>

Testa isso sozinho, veja o resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo, se entendi bem,

 

coloquei o limite de 1 registro

 

ok.. correto.. então, seu problema não é o "num_rows";

mesmo q sua tabela tenha um bilhão de linhas,
a instrução SQL sempre exibirá apenas 1 registro

(ou até nenhum, se você adicionar uma condição "where" que não seja atendida)..
entenda que esse conceito de "por página" em SQL "non ecziste"..

dicas boas:
http://www.linhadecodigo.com.br/artigo/2975/comandos-basicos-em-sql-insert-update-delete-e-select.aspx
http://www.linhadecodigo.com.br/artigo/75/principais-instrucoes-em-sql.aspx

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.