• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Einträge in verschiedenen Zeilen nacheinander auslesen

Status
Für weitere Antworten geschlossen.

Anonymous

Neues Mitglied
Einträge in verschiedenen Zeilen nacheinander auslesen

Hallo,

ich habe mich vor wenigen Tagen zum ersten mal an einem Gästebuch versucht. Leider scheiterte ich.

Mein Problem ist folgendes:

Gästebuch-Aufbau:
Code:
----------------------------------------
|                 Formular              |
----------------------------------------
|              Neuster Beitrag          |
|          Zweitneuster Beitrag         |
|                      usw.             |
-----------------------------------------

Der Aufbau der einzelnen Beiträge sieht wie folgt aus:
Code:
----------------------------------------
|          Von E-Mail: Name             |
|                   Beitrag             |
----------------------------------------

In MySQL habe ich folgende Spalten:
- name
- email
- beitrag

Alle Datensätze werden mit einer ID gekennzeichnet.

Nun meine Frage:
Wie rufe ich den neusten, den zweitneusten (usw.) Eintrag aus der MySQL-Datenbank auf?

Beispiel zur Verdeutlichung:
Code:
$sql = "SELECT `name` FROM `gaestebuch` WHERE `id` = 'newest_id'"

Über hilfreiche Antworten wäre ich euch sehr dankbar.
 
Werbung:
Du ich vermute die kleinste id enthält den ältesten eintrag oder?

alos folgendes an den befehl anhängen:
Code:
ORDER BY `id` ASC;

Du kannst statt ASC auch DESC schreiben ich bin mir nicht so sicher welches in welcher reihenfolge ordnet...
 
Werbung:
Ich hatte es bisher so:
[php:1:649d22e636]<?php
$sql_beitrag = "SELECT `beitrag` FROM `gaestebuch` ORDER BY `id` DESC";
$query_beitrag = mysql_query($sql_beitrag);
$array_beitrag = mysql_fetch_array($query_beitrag);

echo $array_beitrag["beitrag"];
?>[/php:1:649d22e636]

Das hat nur leider nicht funktioniert.

Außerdem, wenn man das so ausgeben lassen würde, dann würde er doch alle Einträge sortiert ausgeben und nicht den ersten, beim nächsten Aufrufen den zweiten, usw. oder?
 
Werbung:
[php:1:17bbe72864]<?php
$sql = "SELECT * FROM `gaestebuch` ORDER BY `id` DESC";
?>[/php:1:17bbe72864]

Okay, aber wie lasse ich das nun ausgeben?

Wie lasse ich den neusten Namen, die neuste E-Mail und den neusten Beitrag ausgeben?
Wie lasse ich den zweitneusten Namen, die zweitneuste E-Mail und den zweitneusten Beitrag aufgeben?
usw.
 
Werbung:
[php:1:267773d5da]
<?php
include("dbconnect.php");
$abfrage = "SELECT * FROM gaestebuch ORDER BY `ID` DESC";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo "<table cellspacing=1 cellpadding=1 border=1 width=750 bordercolor=#000000 bgcolor=#c8c8ff><tr><td align=left bgcolor=#6464ff><font class=Style_3>Eintrag von: <a href=mailto:";
echo $row->Email;
echo ">";
echo $row->Name;
echo "</a></font></td></tr><tr><td align=left>";
echo $row->Kommentar;
echo "
</td></tr><table cellspacing=1 cellpadding=1 border=1 width=750 bordercolor=#000000 bgcolor=#6464ff><tr><td width=98% align=left><font class=Style_3>Datum: ";
echo $row->DatumUhrzeit;
echo "</font></td><td width=2% align=left><font class=Style_3><a target=_blank href=admin.php?zusatz_id=";
echo $row->ID;
echo ">#</a></font></td></tr></table>
";
}
?>
[/php:1:267773d5da]

so isses bei mir unter http://gaestebuch.famthoma.de
 
kannst jede variable dafür nehemen. kannst auch $tabellen-zelle nehmen, in meinem PHP buch wurde das immer $row genannt
 
Werbung:
Als alternative dazu mit Arrays:

[php:1:08c020f231]<?php
while($row = mysql_fetch_array($ergebnis))
{
echo "<table cellspacing=1 cellpadding=1 border=1 width=750 bordercolor=#000000 bgcolor=#c8c8ff><tr><td align=left bgcolor=#6464ff><font class=Style_3>Eintrag von: <a href=mailto:";
echo $row['Email'];
echo ">";
echo $row['Name'];
echo "</a></font></td></tr><tr><td align=left>";
echo $row['Kommentar'];
echo "
</td></tr><table cellspacing=1 cellpadding=1 border=1 width=750 bordercolor=#000000 bgcolor=#6464ff><tr><td width=98% align=left><font class=Style_3>Datum: ";
echo $row['DatumUhrzeit'];
echo "</font></td><td width=2% align=left><font class=Style_3><a target=_blank href=admin.php?zusatz_id=";
echo $row['ID'];
echo ">#</a></font></td></tr></table>
";
}
?>[/php:1:08c020f231]
 
Werbung:
es hat sich schon fast ein standart eingebürgt:
[php:1:439365ac1f]<?php
$query = "";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
/*
/*ausgabe oder was auch immer
/*/
}
?>[/php:1:439365ac1f]
 
nimm doch in die while noch extract($row);
hinzu, dann kannst du direkt $Kommentar usw. nehmen!
 
Werbung:
könnte aber unübersichtlich werden, wenn du schon viele variablen im projekt hast... wenn ich $row habe, weis ich immer genau, dass es von ner db abf ist
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben