Ausgabe von bestimmten Datensätzen

marloy87

Mitglied
Ich möchte die letzten 10 Datensätze aus meiner Datenbank ermitteln. Zur Info: Ich möchte später bei der Ausgabe der Ergebnisse ein Anhängsel hinzufügen. Aber nur bei diesen letzten 10 Einträgen. Wie funktioniert das?

Gruß
marloy87
 
Ich blicke auf der Seite, die du mir gegeben hast nicht so richtig durch... Der Befehl LIMIT ist mir bekannt. Aber ich will ja nicht nur dieses Ergebnis ausgeben, sondern alle! Nur bei den letzen 10 Einträgen kommt was hinzu.

Ich stelle mir das so vor:
...
Code:
$sql="SELECT * FROM musik ORDER BY Titel";
$result=mysql_query($sql);
echo "<tr><th>Titel des Songs</th></tr>";
while ($row=@mysql_fetch_assoc($result)){
echo "<tr><td><a href='musik.php?id=$row'>$row";
(hier soll jetzt eine Grafik bei den letzen 10 Einträgen hinzugefügt werden)

Code:
echo "</a></td></tr>\n";
}
...

Muss ich das vielleicht mit dem IF-Befehl machen?

Wenn ich mich etwas undeutlich ausdrücke, tut es mir leid... ich bin erst anfänger.

Danke nochmal!
 
Du müsstest zuerstmal die Anzahl der Datensätze auslesen, die du bekommen hast.
Dann durchläufst du alle Datensätze entweder per Zählschleife(for) oder muss zusätzliche in einer extra Variable mitzählen.
 
Ich habe jetzt selber schon eine Lösung gefunden! Trotzdem Danke!

Ich habe erstmal alle Einträge gezählt:
Code:
$sql="SELECT id FROM filme";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
dann habe ich von dem Ergebnis 10 abgezogen:
Code:
$count=$count-10
und dann habe ich in der While-Schleife einfach noch eine IF-Abfrage reingesetzt, mit der ich verglichen habe, ob die id größer ist als $count. Wenn ja wird die Grafik ausgegeben.
Code:
echo "<tr><td><a href='filme.php?filmid=$row'>$row";
if ($row"id"]>$count){
echo "<img src='xxx.gif' border='0'>";
}
Fertig! man muss erstmal selber drauf kommen Dann denkt man: oh ja, stimmt ja. warum nicht gleich so?
Naja! Danke für Eure Hilfe! :)

Gruß
marloy87
 
Ich weiss ja nicht, wie deine Datenbank konkret aufgebaut ist, ich würde hier in deinem Beispiel auf einen Zufall tippen.

Code:
$Position = 0
while(...
{
    $Position++;
    echo "<tr><td><a href='filme.php?filmid=$row[id]'>$row[Titel]";
    if ($Position>$count){
         echo "<img src='xxx.gif' border='0'>";
     }
}
 
Zuletzt bearbeitet:
Du kannst die Anzahl der Daten die ausgegeben werden begrenzen.

Zum Beispiel:
Code:
SELECT * FROM table LIMIT 10

Es werden die letzten 10 Datensätze ausgegeben.
 
mobs hat gesagt.:
Du kannst die Anzahl der Daten die ausgegeben werden begrenzen.

Zum Beispiel:
Code:
SELECT * FROM table LIMIT 10

Es werden die letzten 10 Datensätze ausgegeben.
Ich weiß, aber ich möchte doch nicht nur die 10 Datensätze anzeigen, sondern alle! Es soll nur bei den letzten 10 Datensätzen eine Grafik hinzugefügt werden.
 
Hmm dann kann das doch entwas komplizierter werden...aber nicht zwingend. Spontan würde ich 2 Abfragen mache. Einmal die ich eben gepostet habe und dann eine mit LIMIT 10,100(bzw. unendlich)

oder du machst eine while-schleife und definierst eine variable, zb. $i diese lässte du dann mit jeden datensatz erhöhen($i++;muss in die whileschleife)
Und dann machste eine If-abfrage

also
PHP:
if($i<11) {echo ... }
 

Neue Beiträge

Zurück