PHP - Pulando linhas do resultado de uma Query com mysql_data_seek()
mysql_data_seek() move o ponteiro interno do resultado de uma Query MySQL para o número da linha especificada. A próxima chamada de uma função, por exemplo mysql_fetch_assoc (), irá retornar esta linha.
mysql_data_seek() é muito útil quando se quer trabalhar com paginações, por exemplo.
Vamos a um exemplo simples, sem o uso do mysql_data_seek(), onde uma tabela simples com ID e nome é consultada.
<?php
include "db.php";
$result = mysql_query("SELECT * FROM ident");
while ($row = mysql_fetch_array($result)) {
echo "ID: {$row['id']}, Nome: {$row['nome']} <br/>";
}
O Resultado é:
ID: 1, Nome: Daniel
ID: 2, Nome: Salete
ID: 3, Nome: Veronica
ID: 4, Nome: Mona
ID: 5, Nome: Zilda
ID: 6, Nome: Ofelia
ID: 7, Nome: Patricia
Agora vamos utilizar mysql_data_seek(). Vamos pular o resultado da consulta da linha 0 para a linha 5 e repetir o loop:
<?php
include "db.php";
$result = mysql_query("SELECT * FROM ident");
mysql_data_seek($result,5);
while ($row = mysql_fetch_array($result)) {
echo "ID: {$row['id']}, Nome: {$row['nome']} <br/>";
}
O resultado é:
ID: 6, Nome: Ofelia
ID: 7, Nome: Patricia
Vale lembrar que o índice interno do resultado do select começa no 0.
Agora é inventar!
Comentários
Postar um comentário