14.12.2019, 12:06
Hallo zusammen,
ich bin schon leicht am verzweifeln
Ich versuche eine DB Abfrage zu erstellen, die mir alle, nach Post-ID gruppierte, Bild-Anhänge ausgibt...dazu das Ganze noch mit Multipage Option.
Grundsätzlich funktioniert meine Abfrage, nur leider liefert die Ausgabe nur einen Anhang pro PID aus, obwohl wissentlich mehrere vorhanden sind.
Das gesetzte LIMIT soll sich auf die PIDs beziehen, also z.B. alle Bilder der ersten 10 einzigartigen PIDs.
Hier meine PHP Funktion:
Entferne ich das:
wird werden alle Bilder ausgegeben, nur leider bezieht sich das LIMIT dann auf die Bilder und nicht auf die PIDs.
Eventuell hat jemand schon eine Lösung für solch eine Abfrage gefunden.
ich bin schon leicht am verzweifeln
Ich versuche eine DB Abfrage zu erstellen, die mir alle, nach Post-ID gruppierte, Bild-Anhänge ausgibt...dazu das Ganze noch mit Multipage Option.
Grundsätzlich funktioniert meine Abfrage, nur leider liefert die Ausgabe nur einen Anhang pro PID aus, obwohl wissentlich mehrere vorhanden sind.
Das gesetzte LIMIT soll sich auf die PIDs beziehen, also z.B. alle Bilder der ersten 10 einzigartigen PIDs.
Hier meine PHP Funktion:
PHP-Code:
$where = "WHERE a.thumbnail != '' AND a.thumbnail != 'SMALL'";
$where .= " AND a.uid = {$uid} AND p.uid = {$uid}";
$where .= " AND a.visible = 1 AND p.visible = 1";
$unviewable = get_unviewable_forums();
if($unviewable)
{
$where .= " AND p.fid NOT IN ($unviewable)";
}
$inactive = get_inactive_forums();
if($inactive)
{
$where .= " AND p.fid NOT IN ($inactive)";
}
$query = $db->query("
SELECT a.pid, a.aid, a.thumbnail, a.filename, p.tid, p.subject
FROM ".TABLE_PREFIX."attachments a
LEFT JOIN ".TABLE_PREFIX."posts p ON (p.pid = a.pid)
{$where}
GROUP BY a.pid
ORDER BY a.pid DESC, a.aid ASC
LIMIT {$start}, {$per_page}
");
Entferne ich das:
PHP-Code:
GROUP BY a.pid
wird werden alle Bilder ausgegeben, nur leider bezieht sich das LIMIT dann auf die Bilder und nicht auf die PIDs.
Eventuell hat jemand schon eine Lösung für solch eine Abfrage gefunden.