Forum und email

mysql_data_seek

(PHP 4, PHP 5, PECL mysql:1.0)

mysql_data_seek — Déplace le pointeur interne de résultat MySQL

Description

bool mysql_data_seek ( resource $result , int $row_number )

mysql_data_seek() déplace le pointeur interne de résultat, dans le résultat associé à l'identifiant de résultat result_identifier . Il le fait pointer à la ligne row_number . Le prochain appel à une fonction MySQL de récupération de données, comme la fonction mysql_fetch_assoc() retournera cette ligne.

row_number commence à 0. row_number doit être une valeur qui va de 0 à mysql_num_rows() - 1. Cependant, si le résultat est vide, un row_number de 0 échouera avec une erreur E_WARNING et mysql_data_seek() retournera FALSE.

Liste de paramètres

result

La ressource de résultat qui vient d'être évaluée. Ce résultat vient de l'appel à la fonction mysql_query().

row_number

La position de la ligne désirée pour le nouveau pointeur de résultats.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

Exemples

Example#1 Exemple avec mysql_data_seek()

<?php
$link 
mysql_connect('localhost''mysql_user''mysql_password');
if (!
$link) {
    die(
'Connexion impossible : ' mysql_error());
}
$db_selected mysql_select_db('sample_db');
if (!
$db_selected) {
    die(
'Sélection de base de données impossible : ' mysql_error());
}
$query 'SELECT nom_famille, prenom FROM amis';
$result mysql_query($query);
if (!
$result) {
    die(
'Requête échec : ' mysql_error());
}
/* Récupération des lignes en ordre inverse */
for ($i mysql_num_rows($result) - 1$i >= 0$i--) {
    if (!
mysql_data_seek($result$i)) {
        echo 
"Ne peut pointer vers la ligne $i : " mysql_error() . "\n";
        continue;
    }

    if (!(
$row mysql_fetch_assoc($result))) {
        continue;
    }

    echo 
$row['nom_famille'] . ' ' $row['prenom'] . "<br />\n";
}

mysql_free_result($result);
?>

Notes

Note: La fonction mysql_data_seek() peut être utilisée en conjonction avec mysql_query(), mais pas avec la fonction mysql_unbuffered_query().