Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Neuer Post eines Bestimmten Themas auf Startseite
#11
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
Zitieren
#12
Eindeutig!! Danke Big Grin
Zitieren
#13
(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
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#14
Hihi ja xD ich weiß, sorry Big Grin ich meinte Aber meine headertabelle auf allen Seiten ^^
Zitieren
#15
Mag sich das mit dem Autor und dem Datum noch jemand angucken? :3
Zitieren
#16
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 />"
Keinen Support per PN, eMail und Messenger
computerhartware.de
GIGA - Spielen geht immer!
Zitieren
#17
uhh perfekt, vielen, vielen Dank euch! Smile
Zitieren
#18
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 />";
        }
    }

Zitieren
#19
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.
Zitieren
#20
ne leider hat sich nichts getan Sad
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Betreff eines Themas wird von der PM übernommen Plexxart 4 1.710 27.12.2013, 14:33
Letzter Beitrag: Plexxart
  Standardsuch soll Beiträge eines Bestimmten Basteltrulla 3 3.200 31.12.2006, 10:53
Letzter Beitrag: Basteltrulla