Seite 1 von 2
wer ist online - verlegen
Verfasst: 23.12.2006 19:37
von Anton222
hallo! verrät mir einer wie ich es schaffe auf einer anderen, übergeordneten seite angezeigt zu bekommen wieviel gäste+user+unsichtbare grade online sind?
danke
Verfasst: 23.12.2006 19:52
von Miriam
Die index.php ist in der Hierarchie des phpBB die höchste Seite.
Was meinst Du mit "übergeordnet"?
Verfasst: 23.12.2006 21:03
von Anton222
www.meineseite.at/phpbb
ist das forum
und
www.meineseite.at
ist meine starseite
ich würde es gerne auch auf dieser klein einbinden wieviele leute grade im forum online sind.
Verfasst: 23.12.2006 22:51
von Miriam
Cooler Link
Nochmal zum Thema: Hast Du schon mal die Suche bemüht? Es gibt einige Threads zu dieser Problematik.
Verfasst: 24.12.2006 09:52
von Anton222
das man das grundsätzlich gefragt wird:D
ja habe ich!
und dies ist oft schwierig wenn man mehrere worte benutzen muß um etwas zu beschreiben..
zumindest so das nicht 19 von 20 ergebnssen etwas ganz anderes beinhalten;)
Verfasst: 24.12.2006 10:36
von Miriam
Generell sollte es so laufen:
Code test.php
Code: Alles auswählen
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
$page_title = 'Anzeige der Online-User';
define('SHOW_ONLINE', true);
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'test.tpl')
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
Dazugehörige test.tpl im Verzeichnis Deines Standardtemplates:
Code: Alles auswählen
<table>
<tr>
<td class="row1" align="left"><span class="gensmall">{TOTAL_USERS_ONLINE} [ {L_WHOSONLINE_ADMIN} ] [ {L_WHOSONLINE_MOD} ]<br />{RECORD_USERS}<br />{LOGGED_IN_USER_LIST}</span></td>
</tr>
</table>
That's it.
Verfasst: 24.12.2006 16:41
von Anton222
danke! aber du hast mich falsch verstanden;)
viel einfacher;)
ich möchte eigentlich nur die anzahl der user neben dem menü habe, auf der übergeordneten startseite haben..
also eine ganz phpbb unabhängige , übergeordnete startseite wo ich neben der navi (oder wo auch immer) einfach ausgegeben bekomme wieviel leute grade alles in allem online sind..
keine namen, kein mod ..garnix

nur zb zur zeit sind XY leute im forum (oder auf dieser seite).
also quasi
$geuests_online + $reg_online + hidden_online ;
so ungefähr;)
bin nicht so der große php'ler:)
hoffe man hats jetzt verstanden

Verfasst: 24.12.2006 17:31
von S2B
Schau dir mal das hier an:
http://www.phpbb.de/viewtopic.php?t=96371
Edit: Hmm, das sollte man mal ein bisschen überarbeiten...
Moment
Edit2:
Code: Alles auswählen
$five_min_ago_ts = time() - (60 * 5);
// Auslesen
$sql = "SELECT user_id, username
FROM phpbb_users
WHERE user_session_time > $five_min_ago_ts
ORDER BY user_session_time DESC";
if (!$result = mysql_query($sql))
{
die('Die Online-Liste konnte nicht ausgelesen werden: ' . mysql_error());
}
// Liste generieren
$users_online = '';
while ($user = mysql_fetch_assoc($result))
{
$users_online .= ($users_online != '') ? ', ' : '';
$users_online .= '<a href="http://dein-forum.de/dein-pfad/profile.php?mode=viewprofile&u=' . $user['user_id'] . '">' . $user['username'] . '</a>';
}
mysql_free_result($result);
// Ausgeben
if ($users_online != '')
{
echo $users_online;
}
else
{
echo 'Momentan ist kein registrierter Benutzer online.';
}
und vorher Verbindung zur Datenbank aufbauen.
Verfasst: 24.12.2006 18:30
von Anton222
krieg ich nicht hin!?
wie meinst du Verbindung zur Datenbank aufbauen?
Verfasst: 25.12.2006 00:45
von gn#36
da gehört irgendwo ein Befehlt mysql_connect(xyz) und mysql_select_db(abc) hin. Mit Inhalt füllen müsstest du selbst, schließlich kenne ich keine Passwörter. Einfacher ist aber vermutlich einfach das hier vor das Skript zu schreiben:
Code: Alles auswählen
define('IN_PHPBB',true);
$phpbb_root_path = 'pfad_zum_forum/';
include($phpbb_root_path.'extension.inc);
include($phpbb_root_path.'common.'.$phpEx);
Das funktioniert natürlich alles nur wenn es auch eine mysql Datenbank ist...
Sonst musst du auf die allgemeineren Befehle umsteigen. ($db->sql_query() statt mysql_query() $db->fetchrow() statt mysql_fetch_assoc()...)