mysql_data_seek

(PHP 4, PHP 5)

mysql_data_seekDéplace le pointeur interne de résultat MySQL

Avertissement

Cette extension est obsolète depuis PHP 5.5.0, et sera supprimée dans le futur. À la place, les extensions MySQLi ou PDO_MySQL doivent être utilisées. Voir aussi le guide MySQL : choix de l'API ainsi que la FAQ associée pour plus d'information. Voici les alternatives à cette fonction :

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 ou FALSE si une erreur survient.

Exemples

Exemple #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().

Voir aussi

LoadingChargement en cours