P
PHPFrage
Hallo,
ich möchte aus einer mysql Datenbank Einträge auslesen.
Ich benutze Prepared Statements und versuche die Einträge mit der Funktion fetch() auszulesen.
Allerdings erhalte ich dadurch alle Einträge doppelt. Ich habe gelesen dass es daran liegt dass er alle Werte auf zwei Weisen ausgibt und das man dies bei den Funktionen fetch_array() und so weiter durch extra parameter kontrollieren kann. Allerdings habe ich manual für die funktion fetch kein Parameter dafür gefunden.
Wie kann ich es schaffen dass alle Beiträge nur einmal ausgegeben werden? Habe schon alles durchgesucht aber nichts gefunden. Hier nochmal der Code falls es hilft.
ich möchte aus einer mysql Datenbank Einträge auslesen.
Ich benutze Prepared Statements und versuche die Einträge mit der Funktion fetch() auszulesen.
Allerdings erhalte ich dadurch alle Einträge doppelt. Ich habe gelesen dass es daran liegt dass er alle Werte auf zwei Weisen ausgibt und das man dies bei den Funktionen fetch_array() und so weiter durch extra parameter kontrollieren kann. Allerdings habe ich manual für die funktion fetch kein Parameter dafür gefunden.
Wie kann ich es schaffen dass alle Beiträge nur einmal ausgegeben werden? Habe schon alles durchgesucht aber nichts gefunden. Hier nochmal der Code falls es hilft.
Code:
$sql = 'SELECT
Content, message.Username, Date
FROM
User, message
WHERE
message.ReceiverID = ?
ORDER BY
Date DESC';
$stmt = $db->prepare($sql);
if (!$stmt)
{
die($db->error);
}
$stmt->bind_param('i', $ID);
if(!$stmt->execute())
{
die($stmt->error);
}
$stmt->bind_result($Content, $Name, $Date);
$stmt->store_result();
if (!$stmt->num_rows)
{
echo 'Keine Nachrichten vorhanden';
}
else
{
while($stmt->fetch())
{
$Counter++;
echo 'Von '.htmlspecialchars($Name).'<br />';
echo htmlspecialchars($Date).'<br />';
echo htmlspecialchars(nl2br($Content)).'<br />';
echo '-----------------------------------------<br />';
}
}