Anonym
6. August 2000 um 13:41
1
Hallo,
Ich möchte die 10 letzten einträge aus einer MYSQL Datenbank lesen … mit PHP3…
Wie mach ich das… ich hab alles mit der ID als Unique und aufsteigend in der Datenbank…
$sql = „SELECT id,artikel_name,preis,age from inserat_eintraege“;
$result=mysql_query($sql,$db); // Ausführen des SQL Querys
while ($erg=mysql_fetch_array($result))
{
echo $erg[„artikel_name“]);
}
Hier sollen jetzt nur die letzten 10 einträger der datenbank ausgegeben werden…
Danke, Gruss Sebastian
Anonym
6. August 2000 um 13:54
2
Hi, Wenn ich mich an mein SQL richtig erinnere. (Mein Buch hab ich grad nicht da) müßte die Anweisung ungefähr so lauten:
SELECT TOP 10 id,artikel\_name,preis,age FROM inserat\_eintraege ORDER BY id DESC;
Den Rest mußt du selbst machen, weil ich PHP (noch) nicht kann.
cu, holli
$sql = „SELECT id,artikel_name,preis,age from
inserat_eintraege“;
„SELECT blablabla from blablabla LIMIT 1,10“
oder eben nicht mit ner while-Schleife sondern mit ner for-schleife abfragen (gibt allerdings evtl. Probleme wenn weniger als 10 Einträge vorhanden sind).
MfG Bruno Haller
Anonym
7. August 2000 um 14:17
4
Danke, aber ich wollte die letzten 10 einträger und nicht die erste 10…
Gruss Sebi
da gibts mehrere Möglichkeiten, entweder du machst
mysql_num_rows (liefert die ANzahl Zeilen zurück) und liest sämtliche Zeilen und ignorierst den Inhalt bis du zu den 10 letzten gekommen bist.
Oder du machst eine Query „SELECT Count(*) AS anzahl FROM …“
$row = mysql_fetch_array($result);
$anzahl = $row[„anzahl“];
und dann die query:
$start = $anzahl - 10;
SELECT blablabla LIMIT $start, 10
Anonym
7. August 2000 um 20:03
6
Meine Lösung (sie andere Antwort) funktioniert doch prima.
holli
Ich habe gerade die komplette mysql-Doku nach „top“ durchsucht und da gabs das nirgends.
Bruno
Anonym
7. August 2000 um 20:22
8
Ich habe gerade die komplette mysql-Doku nach „top“ durchsucht
und da gabs das nirgends.
TOP ist ein Standard SQL-Schlüsselwort. Das gibts, glaub mir.
holli
TOP ist ein Standard SQL-Schlüsselwort. Das gibts, glaub mir.
habe es gerade mal auf eine Tabelle bei mir angewendet, nach deiner Syntax:
„SELECT TOP 3 username FROM users ORDER BY username ASC“
MySQL meldet: You have an error in your SQL syntax near ‚3 username FROM users ORDER BY username ASC‘ at line 1
Anonym
7. August 2000 um 21:31
10
Mmh. TOP ist auf JEDEN Fall Bestandteil der SQL-Syntax.
Kann sein, daß mySQL nicht alles korrekt implementiert hat.
In meinem Programmen (nutzen ORACLE und ACCESS-Datenbanken) funktioniert es ohne Probleme.
cu, holli
Wie waere es denn mit einer Kombination eurer beider Vorschlaege?
SELECT id,artikel_name,preis,age FROM inserat_eintraege ORDER BY id DESC LIMIT 1,10;
Gruss, Max
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]