Letztes Attachmentbild im anzeigen

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
mora
Mitglied
Beiträge: 64
Registriert: 19.08.2005 11:23

Letztes Attachmentbild im anzeigen

Beitrag von mora »

Hallo,
ich würde gerne auf der Indexseite des Forums stets ein kleines Bild des zuletzt geposteten Attachments (Bild) mit ein paar Informationen dazu (z.b. Poster, Subforum, Beitragstitel, Datum) anzeigen lassen.
Meiner Suche nach scheint es sowas in der Art noch nicht zu geben.

Eventuell würde ich mich auch selbst um eine Lösung bemühen :roll: , wenn mir jemand etwas Hilfestellung bei der Ermittlung des letzten Postings mit einem Attachment gibt und mir die passende Select-Anweisung hierfür nennen könnte ;-)
Den Rest such ich mir dabei.

Hilft mir jemand?
Vielen Dank
monika
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17392
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Hm,

wenn man davon ausgeht, das die höchste ID das aktuellste Attachment ist:

quick and dirty:

Code: Alles auswählen

	$sql = "SELECT * FROM phpbb_attachments
			ORDER BY attach_id ASC ";
	
	$result = $db->sql_query($sql);

	while ($row = $db->sql_fetchrow($result)) 
	{
		$last_attachment = $row['attach_id'];
	}
Damit hast du in der Variablen $last_attachment die attachment_id des letzten Uploads stehen.

Vielleicht kannst du damit was anfangen.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

dr.death hat geschrieben:Hm,

wenn man davon ausgeht, das die höchste ID das aktuellste Attachment ist:

quick and dirty:

Code: Alles auswählen

	$sql = "SELECT * FROM phpbb_attachments
			ORDER BY attach_id ASC ";
	
	$result = $db->sql_query($sql);

	while ($row = $db->sql_fetchrow($result)) 
	{
		$last_attachment = $row['attach_id'];
	}
Damit hast du in der Variablen $last_attachment die attachment_id des letzten Uploads stehen.

Vielleicht kannst du damit was anfangen.
Ehm nicht wirklich

Code: Alles auswählen

$sql = "SELECT * FROM `phpbb_attachements` WHERE `extension`= 'jpg' OR `extension` = 'jpeg' OR `extension` = 'png' ORDER BY `attach_id` DESC LIMIT 1";
if(!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Could not query last attachement', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$attach_id = $row['attach_id'];
$filename = $row['real_filename'];
echo '<img src="media/'.$filename.'" alt="" border="0">';
Das müsste soweit eigentlich funktionieren, aber ungetestet :wink:
mora
Mitglied
Beiträge: 64
Registriert: 19.08.2005 11:23

Beitrag von mora »

Danke, das ist zumindest schon mal ein Anfang :D
Aber willst du tatsächlich immer gleich ALLE Attachments auslesen?
Zur Zeit sind es mehr als 40000 Bilder....

Ist es nicht besser genau EINS (das letzte) auszulesen? Wegen der Performance, oder macht das nichts?
mora
Mitglied
Beiträge: 64
Registriert: 19.08.2005 11:23

Beitrag von mora »

UUps, da war jemand schneller :grin:
mora
Mitglied
Beiträge: 64
Registriert: 19.08.2005 11:23

Beitrag von mora »

Oh super, du hast ja gleich schon eine Bildanzeige dabei!

Würden mir nur die Daten des dazugehörigen Beitrags fehlen.... :roll: :wink:


(und noch ein paar kleinigkeiten)
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Code: Alles auswählen

$sql = "SELECT * FROM `phpbb_attachements` WHERE `extension`= 'jpg' OR `extension` = 'jpeg' OR `extension` = 'png' ORDER BY `attach_id` DESC LIMIT 1"; 
if(!($result = $db->sql_query($sql))) 
{ 
message_die(GENERAL_ERROR, 'Could not query last attachement', '', __LINE__, __FILE__, $sql); 
} 
$row = $db->sql_fetchrow($result); 
$attach_id = $row['attach_id']; 
$filename = $row['real_filename'];
$topic_id = $row['topic_id']; 
echo '<a href="'.append_sid($phpbb_root_path.'viewtopic.'.$phpEx.'?t='.$topic_id).'"><img src="media/'.$filename.'" alt="" border="0"></a>';
Auf den direkten Beitrag kann man nicht springen nur aus Thema soviel in in der Struktur soweit sehen kann.
Oder ich hab ne andere Version vom Attach Mod.
mora
Mitglied
Beiträge: 64
Registriert: 19.08.2005 11:23

Beitrag von mora »

Ok soweit! :grin:
Auf das Thema springen ist schon gut.
Kann ich auch den User ermitteln und anzeigen, der das Bild gepostet hat?

Kann ich meine Bild so ausgeben? =>

Code: Alles auswählen

$size = GetImageSize ("media/'.$filename."); $noh=$size[1]/5; $now=$size[0]/5; 
echo '<img src="media/'.$filename." width="$now" height="$knoh" border="0">'; 
Zuletzt geändert von mora am 28.11.2005 15:12, insgesamt 1-mal geändert.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Code: Alles auswählen

$sql = "SELECT * FROM `phpbb_attachements` WHERE `extension`= 'jpg' OR `extension` = 'jpeg' OR `extension` = 'png' ORDER BY `attach_id` DESC LIMIT 1"; 
if(!($result = $db->sql_query($sql))) 
{ 
message_die(GENERAL_ERROR, 'Could not query last attachement', '', __LINE__, __FILE__, $sql); 
} 
$row = $db->sql_fetchrow($result); 
$attach_id = $row['attach_id']; 
$filename = $row['real_filename']; 
$topic_id = $row['topic_id'];
$poster_id = $row['poster_id'];
$sql = "SELECT `username`, `user_id` FROM `".USERS_TABLE."` WHERE `user_id` = '".$poster_id."' LIMIT 1";
if(!($result = $db->sql_query($sql))) 
{ 
message_die(GENERAL_ERROR, 'Could not query attachement->userdata', '', __LINE__, __FILE__, $sql); 
}
$attach_user = $db->sql_fetchrow($result); 

     $size = getimagesize('media/'.$filename.');
       $height = $size[1];
       $width = $size[0];
     if ($height > 150)
         {
               $height = 150;
               $percent = ($size[1] / $height);
               $width = ($size[0] / $percent);
         }
     else if ($width > 150)
         {
               $width = 150;
               $percent = ($size[0] / $width);
               $height = ($size[1] / $percent);
         }
$user_link = append_sid($phpbb_root_path.'profile.php?mode=viewprofile&u='.$attach_user['user_id']);
echo '<a href="'.$user_link.'">'.$user_attach['username'].'</a><br />
<a href="'.append_sid($phpbb_root_path.'viewtopic.'.$phpEx.'?t='.$topic_id).'"><img src="media/'.$filename.'" alt="" border="0" width="'.$width.'" height="'.$height.'"></a>';
Jetzt alles erfüllt?
mora
Mitglied
Beiträge: 64
Registriert: 19.08.2005 11:23

Beitrag von mora »

Herzlichen Dank, die wesentlichen Spezifikationen sind erfüllt.

Wobei die Ausgabe des Themenstitel noch eine wundervolle Ergänzung wäre....
...aber das musst du nicht mehr machen, ich kann ja probieren ob ich es auch schaffe obwohl das in keinem Verhältniss zu deiner Arbeitsgeschwindigkeit stehen würde :wink:

Wie dem auch sei: Deine Hilfe ist echt TOP!

monika
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“