Seite 1 von 1

Einfache Anzeige des letzen Bildes in Forenansicht

Verfasst: 19.01.2009 15:04
von morganB
Hallo liebe Community,

bei der alten 2er Verion hatten wir ein nettes selbstgemachtes Feature, welches das letzte hochgeladene Bild ( Attachment) im Forenindex anzeigte.
Da wir auch bei Olymous nicht auf diese Nettigkeit verzichten wollten wurde das kleine Script enzsprechend angepasst.
Soweit so gut, es würde auch funktionieren, wenn es da nicht ein "Problem" mit den Dateiberechtigungen der Attachments geben würde. Die Bilder unter dem files_Verzeichneis werden nicht angezeigt.

Meine Frage, wie kann das erreicht werden?
Werden die Attachments unter Olympus mit anderen Berechtigungen weggeschrieben als in der 2er Version oder wo ist der "Fehler"?

Hier ist der Code für alle die sich dafür interessieren:
[..]
// Abfrage: suche das jüngste Attachment
$result = mysql_query('SELECT post_msg_id, poster_id, physical_filename, extension FROM '.$table_prefix.'attachments ORDER BY attach_id desc limit 1', $linkbff3);
if (!$result) {
die('Ungültige Abfrage: suche jüngstes Bild: '.$dbname.' ' . mysql_error());
}
if (mysql_num_rows($result)>0) // Attachment gefunden
{
$row = mysql_fetch_assoc($result);
$post_id = $row["post_msg_id"];
$filename = $phpbb_root_path.'files/'.$row["physical_filename"];
// $filename = $row["physical_filename"];
//echo "Dateiname: ".$filename."<br>";
//echo "Rootpath: ".$phpbb_root_path."<br>";



$user_id = $row["poster_id"];
} // End If Attachment gefunden

// Abfrage: suche User nach ID
$result = mysql_query('SELECT username FROM '.$table_prefix.'users WHERE user_id ='.$user_id, $linkbff3);
if (!$result) {
die('Ungültige Abfrage: suche User nach ID: '.$dbname.' ' . mysql_error());
}
if (mysql_num_rows($result)>0) // User gefunden
{
$row = mysql_fetch_assoc($result);
$username = $row["username"];
} // End If User gefunden

// Ermitteln von Daten für kleineres Bild
$size = getimagesize($filename);
$height = $size[1];
$width = $size[0];
if ($width > $max_breite)
{
$width = 100;
$percent = ($size[0] / $width);
$height = ($size[1] / $percent);
}
else if ($height > $max_hoehe)
{
$height = 100;
$percent = ($size[1] / $height);
$width = ($size[0] / $percent);
}

// Ausgabe
$post_link = $phpbb_root_path.'viewtopic.php?p='.$post_id;
$user_link = $phpbb_root_path.'profile.php?mode=viewprofile&u='.$user_id;
?>
<table width="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td align="center">
<table width="110" cellspacing="1" cellpadding="3" border="0">
<tr>
<td class="gensmall" align="center"> <strong>Das neuste BFF-Bild</strong><br />
<a href="<?php echo $post_link; ?>" target="_blank"><img src="<?php echo utf8_encode($filename); ?>" border="1" width="<?php echo $width; ?>" height="<?php echo $height; ?>" alt="zum Thema springen" /></a><br />
von <a href="<?php echo $user_link; ?>" target="_blank"><?php echo $username; ?></a>
</td>
</tr>
<tr>
<td class="">&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>

EDIT: Titel geändert.

Re: Einfache Anzeige des letzen Bildes in Forenansicht

Verfasst: 20.01.2009 20:21
von morganB
Hallo,
vielleicht bin ich auch nur im falschen Subforum gelandet? :oops:
Wenn ja, sorry!
Wenn ich könnte würde ich es ja ind die bastelstube verschieben. :wink:

Falls jemand eine Idee hat, ob es ein Mod in dieser Richtung gibt oder was man machen könnte, würde mich das aber auch sehr feuen davon zu lesen.

Re: Einfache Anzeige des letzen Bildes in Forenansicht

Verfasst: 23.01.2009 13:46
von brutto
Hallo MorganB

guck mal hier. Ich hatte praktisch das identische Problem.
Nun klappts ausser mit IE 6 & 7.

Servus,
Brutto