[2.0.x] Anzeige der letzten Themen

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
kain
Mitglied
Beiträge: 268
Registriert: 06.06.2002 14:23
Wohnort: darmstadt

Beitrag von kain »

hey acid ich habe einen fehler gefunden und zwar in der
## Hack Titel: Recent Topics (zweite Version)
## Hack Version: 2.0.2 (phpBB 2.0 - 2.0.4)

such mal nach folgendem:
<td class="{recent.ROW_CLASS}"><a href="{recent.U_VIEW_FORUM}" class="genmed">{recent.FORUM_NAME}</td>
müsste aber so sein:
<td class="{recent.ROW_CLASS}"><a href="{recent.U_VIEW_FORUM}" class="genmed">{recent.FORUM_NAME}</a></td>

sonst ist alles super :grin:
Kontrolle ist nur eine Illusion, denn niemand weiß was als nächstes passiert
Benutzeravatar
kain
Mitglied
Beiträge: 268
Registriert: 06.06.2002 14:23
Wohnort: darmstadt

Beitrag von kain »

mrmacgee hat geschrieben:Also hier der link zu meiner index.php ( hab ne 1 rangehangen)

http://mitglied.lycos.de/sobclan/forum/index.php1

mein problem wird 1 2 seiten vorher beschrieben....
hey lösch mal das rote # in deiner index.php

#include($phpbb_root_path . 'recent.'.$phpEx);
Kontrolle ist nur eine Illusion, denn niemand weiß was als nächstes passiert
big_EYE
Mitglied
Beiträge: 7
Registriert: 18.09.2003 16:33

Beitrag von big_EYE »

hallo leute!!! ich bin neu hier und wollt mich erst ma vorstellen :D
ich hab auch gleich ne frage: ich hab den "letzte posts" hack installiert aber er funktioniert nicht :cry:

das hier is meine recent php
<?php
// ############ Edit below ############
$css ="http://milchclan.maxsyncron.de/phpBB2/t ... Silver.css"; //path and name to your css_sheet - optional
$length = '25'; // length of topic title
$limit = '3'; // how many topics?
$root ='http://milchclan.maxsyncron.de/phpBB2/'; // board folder without! ending mark (if in same folder just '.')
// ############ Edit above ############

define('IN_PHPBB', true);
$phpbb_root_path = 'http://milchclan.maxsyncron.de/phpBB2/'; // board folder with! ending mark (if in same folder just './')
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

@$userdata = session_pagestart($user_ip, PAGE_INDEX);
@init_userprefs($userdata);

// #### html output ####
echo "<link rel=\"stylesheet\" href=\"$css\" type=\"text/css\">"; // - optional
echo "<table width=\"60%\" cellpadding=\"1\" cellspacing=\"1\" border=\"0\" align=\"center\" class=\"forumline\">";
echo "<tr><th colspan=\"6\">$limit recent topics</th></tr>";
// #### html output ####

$sql = "SELECT post_id FROM " . POSTS_TABLE;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain matched posts list', '', __LINE__, __FILE__, $sql);
}
$recent_ids = array();
while( $row = $db->sql_fetchrow($result) )
{
$recent_ids[] = $row['post_id'];
}
$db->sql_freeresult($result);

$recent_forum = ( isset($HTTP_POST_VARS['forum']) ) ? intval($HTTP_POST_VARS['forum']) : -1;
if ( $recent_forum == -1 )
{
$is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata);
$ignore_forum_sql = '';
while( list($key, $value) = each($is_auth_ary) )
{
if ( !$value['auth_read'] )
{
$ignore_forum_sql .= ( ( $ignore_forum_sql != '' ) ? ', ' : '' ) . $key;
}
}
if ( $ignore_forum_sql != '' )
{
$auth_sql .= ( $auth_sql != '' ) ? " AND f.forum_id NOT IN ($ignore_forum_sql) " : "f.forum_id NOT IN ($ignore_forum_sql) ";
}
}
if ( $recent_author == '' && $auth_sql == '' )
{
$sql = "SELECT topic_id FROM " . POSTS_TABLE . "
WHERE post_id IN (" . implode(", ", $recent_ids) . ")
$where_sql GROUP BY topic_id";
}
else
{
$from_sql = POSTS_TABLE . " p";
if ( $auth_sql != '' )
{
$from_sql .= ", " . FORUMS_TABLE . " f";
$where_sql .= " AND f.forum_id = p.forum_id AND $auth_sql";
}
$sql = "SELECT p.topic_id FROM $from_sql
WHERE p.post_id IN (" . implode(", ", $recent_ids) . ")
$where_sql GROUP BY p.topic_id";
}
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain topic ids', '', __LINE__, __FILE__, $sql);
}

$recent_ids = array();
while( $row = $db->sql_fetchrow($result) )
{
$recent_ids[] = $row['topic_id'];
}
$db->sql_freeresult($result);

$auth_results = implode(', ', $recent_ids);
$sql = "SELECT t.*, f.forum_id, f.forum_name, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_username, p2.post_username AS post_username2, p2.post_time
FROM ". TOPICS_TABLE ." t, ". FORUMS_TABLE ." f, ". USERS_TABLE ." u, ". POSTS_TABLE ." p, ". POSTS_TABLE ." p2, ". USERS_TABLE ." u2
WHERE t.topic_id IN ($auth_results)
AND 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
ORDER BY t.topic_last_post_id DESC LIMIT $limit";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not obtain main information', '', __LINE__, __FILE__, $sql);
}
$line = array();
while( $row = $db->sql_fetchrow($result) )
{
$line[] = $row;
}
$db->sql_freeresult($result);

$tracking_topics = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) : array();
$tracking_forums = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) : array();
for($i = 0; $i < count($line); $i++)
{
$forum_url = append_sid("viewforum.$phpEx?" . POST_FORUM_URL . '=' . $line[$i]['forum_id']);
$forum_id = $line[$i]['forum_id'];
$topic_url = append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . '=' . $line[$i]['topic_id']);
$topic_id = $line[$i]['topic_id'];

$orig_word = array();
$replacement_word = array();
obtain_word_list($orig_word, $replacement_word);
$word_censor = ( count($orig_word) ) ? preg_replace($orig_word, $replacement_word, $line[$i]['topic_title']) : $line[$i]['topic_title'];
$topic_title = ( strlen($line[$i]['topic_title']) < $length ) ? $word_censor : substr(stripslashes($word_censor), 0, $length) . "...";

$topic_type = ( $line[$i]['topic_type'] == POST_ANNOUNCE ) ? $lang['Topic_Announcement'] .' ': '';
$topic_type .= ( $line[$i]['topic_type'] == POST_STICKY ) ? $lang['Topic_Sticky'] .' ': '';
$topic_type .= ( $line[$i]['topic_vote'] ) ? $lang['Topic_Poll'] .' ': '';

$views = $line[$i]['topic_views'];
$replies = $line[$i]['topic_replies'];
if ( ( $replies + 1 ) > $board_config['posts_per_page'] )
{
$total_pages = ceil( ( $replies + 1 ) / $board_config['posts_per_page'] );
$goto_page = ' [ ';
$times = 1;
for($j = 0; $j < $replies + 1; $j += $board_config['posts_per_page'])
{
$goto_page .= '<a href="' . append_sid("$root/viewtopic.$phpEx?" . POST_TOPIC_URL . "=" . $topic_id . "&start=$j") . '" >' . $times . '</a>';
if ( $times == 1 && $total_pages > 4 )
{
$goto_page .= ' ... ';
$times = $total_pages - 3;
$j += ( $total_pages - 4 ) * $board_config['posts_per_page'];
}
else if ( $times < $total_pages )
{
$goto_page .= ', ';
}
$times++;
}
$goto_page .= ' ] ';
}
else
{
$goto_page = '';
}

if ( $line[$i]['topic_status'] == TOPIC_LOCKED )
{
$folder = $images['folder_locked'];
$folder_new = $images['folder_locked_new'];
}
else if ( $line[$i]['topic_type'] == POST_ANNOUNCE )
{
$folder = $images['folder_announce'];
$folder_new = $images['folder_announce_new'];
}
else if ( $line[$i]['topic_type'] == POST_STICKY )
{
$folder = $images['folder_sticky'];
$folder_new = $images['folder_sticky_new'];
}
else
{
if ( $replies >= $board_config['hot_threshold'] )
{
$folder = $images['folder_hot'];
$folder_new = $images['folder_hot_new'];
}
else
{
$folder = $images['folder'];
$folder_new = $images['folder_new'];
}
}

if ( $userdata['session_logged_in'] )
{
if ( $line[$i]['post_time'] > $userdata['user_lastvisit'] )
{
if ( !empty($tracking_topics) || !empty($tracking_forums) || isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
{
$unread_topics = true;
if ( !empty($tracking_topics[$topic_id]) )
{
if ( $tracking_topics[$topic_id] > $line[$i]['post_time'] )
{
$unread_topics = false;
}
}
if ( !empty($tracking_forums[$forum_id]) )
{
if ( $tracking_forums[$forum_id] > $line[$i]['post_time'] )
{
$unread_topics = false;
}
}
if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
{
if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $line[$i]['post_time'] )
{
$unread_topics = false;
}
}
if ( $unread_topics )
{
$folder_image = $folder_new;
$folder_alt = $lang['New_posts'];
$newest_img = '<a href="' . append_sid("$root/viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&view=newest") . '"><img src="'. $root.'/'.$images['icon_newest_reply'] . '" alt="' . $lang['View_newest_post'] . '" title="' . $lang['View_newest_post'] . '" border="0" /></a> ';
}
else
{
$folder_alt = ( $line[$i]['topic_status'] == TOPIC_LOCKED ) ? $lang['Topic_locked'] : $lang['No_new_posts'];
$folder_image = $folder;
$folder_alt = $folder_alt;
$newest_img = '';
}
}
else if ( $line[$i]['post_time'] > $userdata['user_lastvisit'] )
{
$folder_image = $folder_new;
$folder_alt = $lang['New_posts'];
$newest_img = '<a href="' . append_sid("$root/viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&view=newest") . '"><img src="'. $root.'/'.$images['icon_newest_reply'] . '" alt="' . $lang['View_newest_post'] . '" title="' . $lang['View_newest_post'] . '" border="0" /></a> ';
}
else
{
$folder_image = $folder;
$folder_alt = ( $line[$i]['topic_status'] == TOPIC_LOCKED ) ? $lang['Topic_locked'] : $lang['No_new_posts'];
$newest_img = '';
}
}
else
{
$folder_image = $folder;
$folder_alt = ( $line[$i]['topic_status'] == TOPIC_LOCKED ) ? $lang['Topic_locked'] : $lang['No_new_posts'];
$newest_img = '';
}
}
else
{
$folder_image = $folder;
$folder_alt = ( $line[$i]['topic_status'] == TOPIC_LOCKED ) ? $lang['Topic_locked'] : $lang['No_new_posts'];
$newest_img = '';
}

$forum_name = $line[$i]['forum_name'];

$first_time = create_date($board_config['default_dateformat'], $line[$i]['topic_time'], $board_config['board_timezone']);
$first_author = ( $line[$i]['user_id'] != ANONYMOUS ) ? '<a href="' . append_sid("$root/profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $line[$i]['user_id']) . '" class="genmed">'.$line[$i]['username'].'</a>' : ( ($line[$i]['post_username'] != '' ) ? $line[$i]['post_username'] : $lang['Guest'] );
$last_time = create_date($board_config['default_dateformat'], $line[$i]['post_time'], $board_config['board_timezone']);
$last_author = ( $line[$i]['id2'] == ANONYMOUS ) ? ( ($line[$i]['post_username2'] != '' ) ? $line[$i]['post_username2'] . ' ' : $lang['Guest'] . ' ' ) : '<a href="' . append_sid("$root/profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $line[$i]['id2']) . '" class="genmed">' . $line[$i]['user2'] . '</a>';
$last_url = '<a href='. append_sid("$root/viewtopic.$phpEx?" . POST_POST_URL . '=' . $line[$i]['topic_last_post_id']) . '#' . $line[$i]['topic_last_post_id'].'><img src='.$root.'/'.$images['icon_latest_reply'].' alt='.$lang['View_latest_post'].' border=\"0\" /></a>';
$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];

// #### html output ####
echo "<tr><td class=\"$row_class\" align=\"center\" valign=\"middle\"><img src=\"$root/$folder_image\" alt=\"$folder_alt\" /></td>";
echo "<td class=\"$row_class\"><a href=\"$root/$forum_url\" class=\"genmed\">$forum_name</a></td>";
echo "<td class=\"$row_class\"><span class=\"topictitle\">$newest_img $topic_type<a href=\"$root/$topic_url\" class=\"topictitle\">$topic_title</a></span>
<font size=\"-6\">$goto_page<br />$lang[Started] $first_time $lang[by] $first_author</font></td>";
echo "<td class=\"$row_class\" align=\"right\"><span class=\"postdetails\">$replies $lang[Replies]&nbsp;<br />$views $lang[Views]</span>&nbsp;</td>";
echo "<td class=\"$row_class\" align=\"right\" valign=\"middle\" nowrap=\"nowrap\"><span class=\"gensmall\"> $last_url $last_time&nbsp;<br />$last_author</span>&nbsp;&nbsp;</td></tr>";
// #### html output ####
}

// #### html output ####
echo "</table>";
// #### html output ####
?>
hier der link zu meiner seite:
http://www.milch-clanpage.de.vu

auf der rechten seite bei "letzten 3 posts"
da steht aber nur "Hack Attempt"
warum? wo liegt der fehler?
ich hab die recent in den gleichen ordner geloadet wie auch die php seite.
what shall i do?
Benutzeravatar
kain
Mitglied
Beiträge: 268
Registriert: 06.06.2002 14:23
Wohnort: darmstadt

Beitrag von kain »

hmm wenn ich da guck dann funktionierts :wink:
Kontrolle ist nur eine Illusion, denn niemand weiß was als nächstes passiert
Benutzeravatar
oxpus
Ehemaliges Teammitglied
Beiträge: 5394
Registriert: 03.02.2003 12:33
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich hab da auch keinen Fehler :-?
Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
F@B
Mitglied
Beiträge: 9
Registriert: 19.09.2003 18:38

Beitrag von F@B »

Ich habe auch eine Frage, und zwar ob ich die letzten Beiträge wie einen Newsticker ausgeben kann... also das die so von rechts nach links durchscrollen :grin:
Benutzeravatar
RusTin
Mitglied
Beiträge: 269
Registriert: 20.09.2003 08:45
Wohnort: Düppenweiler
Kontaktdaten:

Beitrag von RusTin »

Hi,
wenn ich die recent.php datei einzeln aufrufe geht es!
Doch wenn ich sie in meinem footer include dann steht da:

Fatal error: Cannot redeclare class template in D:\www\rage3d\forum\includes\template.php on line 30

Die footer datei und die recent datei sind aber im gleichen ordner!
Benutzeravatar
kain
Mitglied
Beiträge: 268
Registriert: 06.06.2002 14:23
Wohnort: darmstadt

Beitrag von kain »

und was steht da in zeile 30 genau ?
Kontrolle ist nur eine Illusion, denn niemand weiß was als nächstes passiert
Benutzeravatar
RusTin
Mitglied
Beiträge: 269
Registriert: 20.09.2003 08:45
Wohnort: Düppenweiler
Kontaktdaten:

Beitrag von RusTin »

ich hab an der glaub ich nix verändert
das is der code ab zeile 30:

Code: Alles auswählen

class Template {
        var $classname = "Template";

        // variable that holds all the data we'll be substituting into
        // the compiled templates.
        // ...
        // This will end up being a multi-dimensional array like this:
        // $this->_tpldata[block.][iteration#][child.][iteration#][child2.][iteration#][variablename] == value
        // if it's a root-level variable, it'll be like this:
        // $this->_tpldata[.][0][varname] == value
        var $_tpldata = array();

        // Hash of filenames for each template handle.
        var $files = array();

        // Root template directory.
        var $root = "";

        // this will hash handle names to the compiled code for that handle.
        var $compiled_code = array();

        // This will hold the uncompiled code for that handle.
        var $uncompiled_code = array();

        /**
         * Constructor. Simply sets the root dir.
         *
         */
        function Template($root = ".")
        {
                $this->set_rootdir($root);
        }

        /**
         * Destroys this template object. Should be called when you're done with it, in order
         * to clear out the template data so you can load/parse a new template set.
         */
        function destroy()
        {
                $this->_tpldata = array();
        }

        /**
         * Sets the template root directory for this Template object.
         */
        function set_rootdir($dir)
        {
                if (!is_dir($dir))
                {
                        return false;
                }

                $this->root = $dir;
                return true;
        }
Benutzeravatar
RusTin
Mitglied
Beiträge: 269
Registriert: 20.09.2003 08:45
Wohnort: Düppenweiler
Kontaktdaten:

Beitrag von RusTin »

ok wenn ich den footer einzeln aufrufe geht es auch!
ich glaube es liegt an den dateien die ich davor schon includiert habe!
ich benutzte glaube ich schon namen wie template!
wie kann ich das umgehen?
Antworten

Zurück zu „phpBB 2.0: Mod Support“