Function.mysql-data-seek
Aus PHP-Wiki
mysql_data_seek — Bewegt den internen Ergebnis-Zeiger
Beschreibung
bool mysql_data_seek ( resource $Ergebnis-Kennung , int $Datensatznummer )
Rückgabewert: Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.
mysql_data_seek() bewegt den internen
Datensatz-Zeiger eines Anfrageergebnisses zum Datensatz mit der
übergebenen Nummer. Der nächste Aufruf von
mysql_fetch_row() liefert den entsprechenden
Datensatz.
Die Datensatznummer
beginnt bei 0. Die
Datensatznummer
sollte ein Wert im Bereich
zwischen 0 und mysql_num_rows - 1 sein. Falls die Ergebnismenge jedoch
Null sein sollte (mysql_num_rows == 0) wird eine Suche nach
Datensatznummer 0 mit einem E_WARNING
fehlschlagen und mysql_data_seek() gibt FALSE zurück.
Hinweis:
Die Funktion mysql_data_seek() kann nur zusammen
mit mysql_query() benutzt werden und nicht mit
mysql_unbuffered_query().
Beispiel #1 mysql_data_seek() Beispiel
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Keine Verbindung möglich: ' . mysql_error());
}
$db_selected = mysql_select_db('sample_db');
if (!$db_selected) {
die('Auswahl der Datenbank nicht möglich: ' . mysql_error());
}
$query = 'SELECT nach_name, vor_name FROM freunde';
$result = mysql_query($query);
if (!$result) {
die('Anfrage fehlgeschlagen: ' . mysql_error());
}
/* holen der Zeilen in umgekehrter Reihenfolge */
for ($i = mysql_num_rows($result) - 1; $i >= 0; $i--) {
if (!mysql_data_seek($result, $i)) {
echo "Cannot seek to row $i: " . mysql_error() . "\n";
continue;
}
if (!($row = mysql_fetch_assoc($result))) {
continue;
}
echo $row['nach_name'] . ' ' . $row['vor_name'] . "<br />\n";
}
mysql_free_result($result);
?>
Siehe auch: mysql_query() und
mysql_num_rows().