MyBB.de Forum

Normale Version: Neuer Post eines Bestimmten Themas auf Startseite
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Sicherlich ist die Einbindung des Autors & des Postdatums auch möglich, allerdings habe ich noch keinen so rechten Durchblick in MySQL-Abfragen Big Grin

Um die HTML-Tags im ausgegebenen Text zu entfernen, könntest du im Plugin noch:
PHP-Code:
$message htmlspecialchars_uni($post['message']); 
durch
PHP-Code:
$message htmlspecialchars_uni($post['message']);
$message preg_replace("'<[\/\!]*?[^<>]*?>'si","",($post['message'])); 
ersetzen. - Sieht einfach besser aus. Wink
Eindeutig!! Danke Big Grin
(25.11.2013, 11:39)Libella schrieb: [ -> ]und wenn ich das jetzt nicht in der index.php haben möchte?
Du hast doch die ganze Zeit von Startseite geredet... Toungue
Hihi ja xD ich weiß, sorry Big Grin ich meinte Aber meine headertabelle auf allen Seiten ^^
Mag sich das mit dem Autor und dem Datum noch jemand angucken? :3
Sieht in der foreach-Schleife dann so aus:
PHP-Code:
$query $db->query("
                SELECT p.*, t.subject AS tsubject
                FROM "
.TABLE_PREFIX."posts p
                LEFT JOIN "
.TABLE_PREFIX."threads t ON p.tid=t.tid
                WHERE t.tid=
{$tid}
                ORDER BY t.dateline DESC
            "
);
            
$post $db->fetch_array($query);
            if(
my_strlen($post['message']) > $mybb->settings['newpostsindex_limit'])
            {
                
$post['message'] = my_substr($post['message'], 0$mybb->settings['newpostsindex_limit']).'...';
            }
            
$message htmlspecialchars_uni($post['message']);
            
$message preg_replace("'<[\/\!]*?[^<>]*?>'si","",($post['message']));
            
$postdate my_date($mybb->settings['dateformat'], $post['dateline']);
            
$newpostsindex .= $post['username'] . ", " $postdate " - <strong>"htmlspecialchars_uni($post['tsubject'])."</strong><br /><div class=\"float:right\"><a href=\"".get_thread_link($post['tid'])."\">weiterlesen</a></div>{$message}<hr />"
uhh perfekt, vielen, vielen Dank euch! Smile
Hmmmm.. mir ist jetzt irgendwie erst aufgefallen, dass gar nicht die neusten Posts, sondern immer nur der erste ausgegeben wird :/ wisst ihr, woran das nu liegen kann?

http://tdw.bplaced.net/forum/index.php (In der Headertabelle links)

PHP-Code:
function newpostsindex()
{
    global 
$mybb$db$newpostsindex;

    if(!empty(
$mybb->settings['newpostsindex_threads']))
    {
        
$newpostsindex '';
        
$threads explode(','$mybb->settings['newpostsindex_threads']);
        foreach(
$threads as $tid)
        {
            
$query $db->query("
                SELECT p.*, t.subject AS tsubject
                FROM "
.TABLE_PREFIX."posts p
                LEFT JOIN "
.TABLE_PREFIX."threads t ON p.tid=t.tid
                WHERE t.tid=
{$tid}
                ORDER BY t.dateline DESC
            "
);
            
$post $db->fetch_array($query);
            if(
my_strlen($post['message']) > $mybb->settings['newpostsindex_limit'])
            {
                
$post['message'] = my_substr($post['message'], 0$mybb->settings['newpostsindex_limit']).'...';
            }
            
$message htmlspecialchars_uni($post['message']);
            
$message preg_replace("'<[\/\!]*?[^<>]*?>'si","",($post['message']));
            
$postdate my_date($mybb->settings['dateformat'], $post['dateline']);
            
$newpostsindex .= "<strong><a href=\"".get_thread_link($post['tid'])."&action=lastpost\">"htmlspecialchars_uni($post['tsubject'])."</a> | " $post['username'] . ", " $postdate "</strong><br /><div class=\"float:right\"></div> 
            
{$message} <a href=\"".get_thread_link($post['tid'])."&action=lastpost\">mehr&nbsp;»</a><hr />";
        }
    }

King Louis

Ersetz mal
PHP-Code:
$query $db->query("
                SELECT p.*, t.subject AS tsubject
                FROM "
.TABLE_PREFIX."posts p
                LEFT JOIN "
.TABLE_PREFIX."threads t ON p.tid=t.tid
                WHERE t.tid=
{$tid}
                ORDER BY t.dateline DESC
            "
); 

durch

PHP-Code:
$query $db->query("
                SELECT p.*, t.subject AS tsubject
                FROM "
.TABLE_PREFIX."posts p
                LEFT JOIN "
.TABLE_PREFIX."threads t ON p.tid=t.tid
                WHERE t.tid=
{$tid}
                ORDER BY t.dateline DESC
                LIMIT 0, 1
            "
); 

Dann werden allerdings niemals zwei Posts aus einem Thread angezeigt (werden aktuell aber auch nicht). Getestet hab ich das jetzt zwar nicht, aber theoretisch sollte das dein Problem lösen.
ne leider hat sich nichts getan Sad
Seiten: 1 2 3