Vinzenz Mai: Php & Mysql, Zeilen Schrittweise ausgeben

Beitrag lesen

Hallo Phil,

Ich habe ein Problem. Ich habe eiine Mysql Datenbank. Sie ist wie folgt angelegt,

als Begriffsklärung: Das sind die Spalten einer Tabelle in einer Datenbank, die von dem Datenbankmanagementsystem (DBMS) MySQL verwaltet wird.

num, image, name

Das sieht das zum Beispiel so aus,

1 | aaa.jpg | John
2 | bbb.jpg | Doe
3 | ccc.jpg | Jane
4 | ddd.jpg | Doe

Nun würde ich gerne mit PHP die Zeilen Schrittweise oder einzeln ausgeben. Sol heissen, ich würde gerne mit PHP Zeile 1, 3, 6 und 10 ausgeben. Wie mache ich das?

Es gibt keine Zeilen 1, 3, 6, 10. Jedenfalls nicht in dem Sinne, den Du vielleicht meinst. In welcher Reihenfolge das DBMS die Zeilen einer Tabelle speichert ist völlig unwichtig. Wenn Du eine bestimmte Reihenfolge haben möchtest, dann musst Du nach einem Kriterium sortieren.

Möchtest Du Datensätze, die einen bestimmten Wert in einer Spalte, z.B. der Spalte "num" haben, dann gibst Du diese Kriterien in der WHERE-Klausel Deiner SELECT-Anweisung an. Möchtest Du z.B. die Datensätze, die in "num" die Werte 1, 3, 6 und 10 haben und aufateigend nach den Werten in "num" sortiert, so lautete Deine SQL-Anweisung:

SELECT                      -- Gib mir die Werte der Spalten  
    num,                    -- num,  
    image,                  -- image und  
    name                    -- name  
FROM tabelle                -- aus meiner Tabelle  
WHERE                       -- wobei mich nur die Datensätze interessieren,  
    num IN (1, 3, 6, 10)    -- bei denen num die Werte 1, 3, 6 oder 10 annimmt  
ORDER BY                    -- Sortiere die Ergebnismenge nach den Werten  
    num                     -- der Spalte num

Wie Du mit PHP diese Abfrage an das DBMS übermitteln, anschließend die von MySQL zurückgelieferten Daten entgegennehmen und weiterverarbeiten kannst, das steht in den entsprechenden Handbuchabschnitten von PHP. Ich empfehle Dir, entweder die verbesserte MySQL-Erweiterung (ignoriere die Warnung, die deutsche Doku ist hier schrecklich veraltet) oder gleich PDO zu verwenden.

Freundliche Grüße

Vinzenz