Pestana74 0 Denunciar post Postado Abril 14, 2011 Olá amigos, preciso criar um log de sistema com os dados do banco de dados. Já criei o banco de dados e estou registrando todo o acesso do site no banco. Tabela Usada é: tb_logs Campos: id int(9) Não ip varchar(255) Não host varchar(255) Não url text Não data datetime Não 0000-00-00 00:00:00 user varchar(255) Não veiode text Não O problema é como mostrar na tela com paginação de 6 registro conforme exemplo abaixo: Usuario | Data | Ip | Conexão | ----------------------------------------------- $user | $data | $ip | $host | $user | $data | $ip | $host | $user | $data | $ip | $host | $user | $data | $ip | $host | $user | $data | $ip | $host | $user | $data | $ip | $host | páginas 1,2,3,4,5 Agradeço ajuda? Compartilhar este post Link para o post Compartilhar em outros sites
RodrigoGuimarães 0 Denunciar post Postado Abril 14, 2011 Amigo gostaria de saber a mesma coisa ... Compartilhar este post Link para o post Compartilhar em outros sites
Pestana74 0 Denunciar post Postado Abril 14, 2011 Estou quase chegando lá... falta agora fazer a paginação pois neste código coloquei um limite de 10 registros mas o legal era listar os 10 ultimos e paginar os anteriores para consultas.. Veja o código funcionando sem paginação... <table width="99%" align="center" cellpadding="0" cellspacing="0"> <tr><td><font class="titulos">Últimos 10 Acessos</font></td> </tr> </table> <table width="99%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td valign="middle"><table width="100%" border="0" cellspacing="1" cellpadding="2"> <tr bgcolor="#CCCCCC"> <td width="9%" align="center"><font size="2" face="Trebuchet MS, Verdana, sans-serif">DATA</font></td> <td width="7%" align="center"><font size="2" face="Trebuchet MS, Verdana, sans-serif">Usuário</font></td> <td width="14%" align="center"><font size="2" face="Trebuchet MS, Verdana, sans-serif">ENDEREÇO IP</font></td> <td width="40%" align="center"><font size="2" face="Trebuchet MS, Verdana, sans-serif">Página Acessada</font></td> <td width="30%" align="center"><font size="2" face="Trebuchet MS, Verdana, sans-serif">HOST</font></td> </tr> <? $busca1 = "SELECT * FROM tb_logs order by data desc LIMIT 10"; $sql1 = mysql_query($busca1); $i=0; while($dados1 = mysql_fetch_array($sql1)){ if (($i%2)==0) { $bgcolor="#FFFFFF"; } else { $bgcolor="#e5e5e5"; } $data = date("d/m/Y", strtotime($dados1[data])); $hora = date("H", strtotime($dados1[data]))."h".date("i", strtotime($dados1[data]))."min"; ?> <tr bgcolor="<?=$bgcolor?>"> <td><?="$data às $hora";?></td> <td><?=$dados1[user];?></td> <td><?=$dados1[ip];?></td> <td><?=$dados1[url];?></td> <td><?=$dados1[host];?></td> </tr> <tr><td colspan="7" bgcolor="#CCCCCC"></td></tr> <? $i++;}?> </table> <br /></td> </tr> </table> Alguem ajuda a criar a paginação neste código ? :) Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Abril 14, 2011 Ô Alex, ainda com paginação? :huh: O mesmo código que te passei noutro tópico não funciona pra essa aí não, hein? Compartilhar este post Link para o post Compartilhar em outros sites
Pestana74 0 Denunciar post Postado Abril 14, 2011 Oi Carlos eu e as paginações :) elas me perseguem.. é diferente mesmo... esta é para controlar os acessos dos usuários... Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Abril 15, 2011 Olha... não vejo diferença, é paginação de resultados do banco de dados, então igual é idependentemente do propósito. Daquele código que consertei pra você só é preciso alterar duas variáveis $busca // SUA CONSULTA SQL $registrosPorPagina // NÚMERO DE REGISTROS QUE VOCÊ QUER EM CADA PÁGINA E pronto, pode ser reaproveitado. (Claro, você deve também alterar o laço que processa os resultados trazidos por mysql_fetch_array()) Compartilhar este post Link para o post Compartilhar em outros sites
Pestana74 0 Denunciar post Postado Abril 15, 2011 Carlos mais um vez RESOLVIDO! estou postando aqui o código corrigido e testado: <? /* if(!empty($data)) $whx1 = "AND data = '$data'"; if(!empty($user)) $whx2 = "AND user = '$user'"; if(!empty($ip)) $whx3 = "AND ip = '$ip'"; if(!empty($veiode)) $whx4 = "AND veiode = '$veiode'"; */ $busca = "SELECT * FROM tb_logs "; $registrosPorPagina = "12"; $page = 1; if(isset($_GET['page']) and $_GET['page'] > 1) { $page = $_GET['page']; } $contarRegistros = "SELECT COUNT(*) AS total_registros FROM tb_logs"; $contarRegistros = mysql_query($contarRegistros) or die('Contagem de registros falhou'); $contarRegistros = mysql_fetch_array($contarRegistros, MYSQL_ASSOC); $totalRegistros = $contarRegistros['total_registros']; $totalPaginas = ceil($totalRegistros / $registrosPorPagina); $inicio = ($page-1) * $registrosPorPagina; $busca .= " LIMIT $inicio,$registrosPorPagina"; // DEBUG //echo "<h1>DEBUG</h1>"; //echo "<br />Página atual = " . $page; //echo "<br />Total registros = " . $totalRegistros; //echo "<br />Total páginas = " . $totalPaginas; //echo "<br />Consuta SQL = " . $busca; //echo "<hr />"; $limite = mysql_query("$busca"); $todos = mysql_query("$busca"); ?> <?php $i=0; while ($dados=mysql_fetch_array($limite)) { $op = explode("|",$dados[user]); if (($i%2)==0) { $bgcolor="#FFFFFF"; } else { $bgcolor="#e5e5e5"; } ?> <tr bgcolor="<?=$bgcolor?>"> <td><?=$dados[data];?></td> <td><strong> <?=$dados[user];?> </strong></td> <td><?=$dados[ip];?></td> <td><strong><font color="#333333"> <?=$dados[url];?> </font></strong></td> <td><?=$dados[veiode];?></td> </tr> <tr><td colspan="7" bgcolor="#CCCCCC"></td></tr> <? $i++;}?> </table> <br /></td> </tr> </table> <div class="pagination_wrapper"> <span class="pagination_top"></span> <div class="pagination_middle"> <div class="pagination"> <ul class="pag_list"> <?php if($page > 1) { $anterior = ($page - 1); if($anterior > 1) { // LINK PARA A PRIMEIRA PÁGINA -- ADICIONEI $primeira = 1; echo "<li><a href='?pg=$pg&acao=$acao&page=$primeira' class='pag_nav'><span><span>Primeira<span/></span></a></li>"; } $url = "?pg=$pg&acao=$acao&page=$anterior"; echo "<li><a href='$url' class='pag_nav'><span><span>Anterior<span/></span></a></li>"; } // Lista de páginas -- Tive que refazer essa parte for($i=1; $i <= $totalPaginas; $i++) { if($i == $page) { // verifica se é a página atual echo "<li>$i</li>"; } else { // se não for gera um link echo "<li><a href=\"?pg=$pg&acao=$acao&page=$i\">$i</a></li>"; } } // Próxima página if($page < $totalPaginas){ $proxima = ($page + 1); $url = "?pg=$pg&acao=$acao&page=$proxima"; echo "<li><a href='$url' class='pag_nav'><span><span>Próxima </span></span></a></li>"; if($proxima < $totalPaginas) { // LINK PARA A ULTIMA PÁGINA -- ADICIONEI $ultima = $totalPaginas; echo "<li><a href='?pg=$pg&acao=$acao&page=$ultima' class='pag_nav'><span><span>Ultima<span/></span></a></li>"; } } ?> Compartilhar este post Link para o post Compartilhar em outros sites