mysql_data_seek

(PHP 3, PHP 4 )

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.

Anmerkung: Die Funktion mysql_data_seek() kann nur zusammen mit mysql_query() benutzt werden und nicht mit mysql_unbuffered_query().

Beispiel 1. Beispiel: Positionieren des Datensatzzeigers

<?php
    $link = mysql_pconnect ("localhost", "mysql_user", "mysql_password")
        or die ("Keine Verbindung möglich");

    mysql_select_db ("samp_db")
        or die ("Auswahl der Datenbank nicht möglich");

    $query = "SELECT nach_name, vor_name FROM freunde";
    $result = mysql_query ($query)
        or die ("Anfrage fehlgeschlagen");

    /* 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\n";
            continue;
        }

        if(!($row = mysql_fetch_object ($result)))
            continue;

        echo "$row->nach_name $row->vor_name<br />\n";
    }

    mysql_free_result ($result);
?>

Siehe auch: mysql_query() und mysql_num_rows().