Ein Besucher soll die Möglichkeit bekommen ein Javascript einzubinden in dem er die 10 letzten Beiträge z.B. aus dem Newssektor oder einem anderen bestimmten Bereich auf seiner Seite einbinden kann.
Hier bietet sich der recent Mod an.
Jetzt will ich das aber noch so haben, dass die ersten 1000 Zeichen aus dem Beitrag anzeigt werden ohne BBCode, aber mit Zeilenumbruch.
nach 1000 Zeichen kommt dann von mir aus ein "..." oder ein "weiter lesen..."
Ich habe schon angefangen.
Ich werde die Daten auslesen dann puffern und in ein js-script oder in eine html seite schreiben.
Mit der Beitragsauflistung das klappt, aber bei dem BBCode komme ich zur Zeit nicht weiter.
ich lese den Text aus wie folgt:
Code: Alles auswählen
$sql = "SELECT t.*, f.forum_id, f.forum_name, u.username AS first_poster, u.user_id AS first_poster_id, u2.username AS last_poster, u2.user_id AS last_poster_id, p.post_username AS first_poster_name, p2.post_username AS last_poster_name, p2.post_time, pt.post_text, pt.post_subject, pt.bbcode_uid
FROM ". $table_prefix ."topics t, ". $table_prefix ."forums f, ". $table_prefix ."users u, ". $table_prefix ."posts p, ". $table_prefix ."posts p2, ". $table_prefix ."users u2, ". $table_prefix ."posts_text pt
WHERE $where_forums t.topic_poster = u.user_id AND f.forum_id = t.forum_id AND p.post_id = t.topic_first_post_id AND p2.post_id = t.topic_last_post_id AND u2.user_id = p2.poster_id AND pt.post_id = p.post_id AND u.user_id = p.poster_id
ORDER BY t.topic_last_post_id DESC LIMIT $topic_limit";
Code: Alles auswählen
$topic_text = $line[$i]['post_text'];
$bbcode_uid = $line[$i]['bbcode_uid'];

Code: Alles auswählen
if ( $bbcode_uid != '' )
{
$topic_text = ( 1 = 1 ) ? bbencode_second_pass($topic_text, $bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $topic_text);
}
Leider habe ich die nicht, weil ich das Puffern und das speichern auf einer anderen Domain machen möchte.
Aber die Funktion ist mir eh zu umfangreich.
eigentlich brauche ich doch nur ein preg_replace, dass mir die "uid"-werte rauslöscht und die tags entfernt. aber irgendwie bin ich zu blöd dafür einen hinzukriegen
