Du bist nicht angemeldet.
Herzlich Willkommen auf den Seiten des deutschsprachigen FluxBB Supportforums. Wenn du neu hier bist, lies bitte die Willkommensnachricht.
Seiten: 1
Da "allow_url_include on" auf dem Server auf dem das Board läuft nicht möglich ist, wir aber dennoch zumindest die 5. neuesten Subjects anzeigen möchten, wurde versucht das mit einem kleinen workaround in header.php zu realisieren.
// END SUBST - <pun_navlinks>
//Recent Posts - extern.php?action=active&show=5 ergebnis von buffer in variable
ob_start();
$_GET['action']='active';
$_GET['show']=5;
require_once('extern.php');
$recentsub=ob_get_contents(); //Buffer wird in $var geschrieben
ob_end_clean(); Danach wird der Inhalt in den Header geschrieben. ($recentsub)
// START SUBST - <pun_status>
if ($pun_user['is_guest']){
$tpl_temp = '<div id="brdwelcome" class="inbox">'."\n\t\t\t".'<p>'.$lang_common['Not logged in'].'</p>Recent posts in: '.$recentsub."\n\t\t".'</div>';
}
else
{
$tpl_temp = '<div id="brdwelcome" class="inbox">'."\n\t\t\t".'<ul class="conl">'."\n\t\t\t\t".'<li>'.$lang_common['Logged in as'].' <strong>'.pun_htmlspecialchars($pun_user['username']).'</strong></li>'."\n\t\t\t\t".'<li>'.$lang_common['Last visit'].': '.format_time($pun_user['last_visit']).'</li><li>Recent posts in: '.$recentsub.'</li>';
unset($_GET['action'],$_GET['show']);Das funktioniert an sich auch. Es ergibt sich dadurch aber ein Problem mit viewtopic.php - siehe dazu am besten ... (testforum mit sinnlosem inhalt auf einem anderen server mit selben php variablen und dem obigen code)
Der "Forumpfad" - also "Index >> Forum >> Subject" wird nicht mehr richtig ausgegeben. Auf viewforum.php wird trotzdem weiterhin richtig "Index >> Forum" angezeigt. Irgendeine Idee wie sich das lösen ließe?
Beitrag geändert von haru (21.04.2012 13:49:16)
Offline
ICH KANN DIR DA WEITERHELFEN GENO!!!
not ![]()
Offline
Jetzt hab ich mich als ich ne mail notification bekam schon gefreut dass ne antwort kam...und dann bist es nur du! ![]()
Beitrag geändert von haru (28.08.2008 16:26:06)
Offline
NUR,... geno! das heisst "yeah geil du!!"
Offline
Ich kann jetzt leider keinen Code posten, weil ich von meinem iPhone schreibe, aber wieso gehst du überhaupt den Umweg über extern.php? Ein Direktzugriff auf die Datenbank wäre der richtige Weg.
Offline
Habs per direktzugriff gemacht.
Offline
Sorry, haru. Ich war ein paar Tage im Urlaub und vom iPhone ist es wirklich schwierig Code zu posten. Würdest du uns aber vielleicht trotzdem aufklären, wie du es schlussendlich geschafft hast?
Offline
Im grunde genommen alles ähnlich extern.php. Die Query holt die Topics und checkt die Permissions, damit in der liste nur topics angezeigt werden, die man als user auch sehen darf. Danach wird das Topic gekürzt und ausgegeben. Der Code unten steht in einem extra php file. In main.tpl hab ich einen anchor "<pun_ticker>" gesetzt der mit einem class="block" DIV ersetzt wird in dem das php file included wird. (Sieht dann wie ein announcement aus, nur eben permanent)
<?php
$limit = 5; //Wieviele Posts sollen angezeigt werden?
$posts = $db->query('SELECT t.id, t.subject FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.moved_to IS NULL ORDER BY t.last_post DESC LIMIT '.$limit.'') or error('Unable to fetch topic list', __FILE__, __LINE__, $db->error());
while( $recent = $db->fetch_assoc($posts) )// Ausgeben
{
$max_subject_length = 30; //Wieviele Zeichen darf das ausgegebene Subject lang sein?
if (pun_strlen($recent['subject']) > $max_subject_length)
$subject_truncated = pun_htmlspecialchars(trim(substr($recent['subject'], 0, ($max_subject_length-5)))).'…';
else
$subject_truncated = pun_htmlspecialchars($recent['subject']);
?>
<a href="/viewtopic.php?id=<?php echo $recent['id'];
?>&action=new"><?php echo $subject_truncated ?></a>
<?php
}
?>Offline
Seiten: 1