Beiträge: 1.450
Themen: 155
Registriert seit: 18.03.2006
Die Zeit wird wahrscheinlich über das Template formatiert. Einfach auf die Angabe im Profil zugreifen, da dürften es Sekunden sein, und dann mit date() oder einer ähnlichen PHP Funktion so formatieren wie du es haben möchtest.
Beiträge: 1.443
Themen: 95
Registriert seit: 15.12.2005
MyBB-Version: 1.6.x
(16.06.2010, 08:22)Jan schrieb: Die Zeit wird wahrscheinlich über das Template formatiert. Einfach auf die Angabe im Profil zugreifen, da dürften es Sekunden sein, und dann mit date() oder einer ähnlichen PHP Funktion so formatieren wie du es haben möchtest.
Besser ist es die MyBB-Funktion my_date zu verwenden:
PHP-Code:
my_date($mybb->settings['dateformat'], $dateline)
my_date($mybb->settings['timeformat'], $dateline)
$dateline ist hier symbolisch und steht für einen Unix-Zeitstempel.
Beiträge: 213
Themen: 8
Registriert seit: 02.09.2009
MyBB-Version: 1.6.11
16.06.2010, 09:19
(Dieser Beitrag wurde zuletzt bearbeitet: 16.06.2010, 09:20 von Olaf_A.)
(16.06.2010, 08:21)querschlaeger schrieb: https://www.mybb.de/forum/thread-22190.html
Vielen Dank für den Beitragslink. Wer sucht, der findet, ich war etwas zu faul dazu und wirklich Zeit habe ich derzeit leider auch nicht. Derzeit muß ich den Haushalt schmeißen, da meine Frau im Krankenhaus liegt.
(16.06.2010, 08:22)Jan schrieb: Die Zeit wird wahrscheinlich über das Template formatiert. Einfach auf die Angabe im Profil zugreifen, da dürften es Sekunden sein, und dann mit date() oder einer ähnlichen PHP Funktion so formatieren wie du es haben möchtest.
Im template des Profiles wird das ganze per Variabel
angezeigt.
Diese wird in der member.php per Funktion
Code:
$timeonline = nice_time($memprofile['timeonline']);
berechnet.
Die Funktion selbst ist in der functions.php:
Code:
function nice_time($stamp, $options=array())
{
global $lang;
$ysecs = 365*24*60*60;
$mosecs = 31*24*60*60;
$wsecs = 7*24*60*60;
$dsecs = 24*60*60;
$hsecs = 60*60;
$msecs = 60;
.....
Was genau müsste ich in die memberlist.php einfügen, damit die timeonline Berechnung vorgenommen wird? timeonline kommt in der memberlist.php gar nicht vor. Im Mitgliederliste Template habe ich zur Abfrage den Wert
Code:
{$user['timeonline']}
benutzt.
MfG Olaf
PS. Ich lerne erst PHP, bzw ich versuche es.
Beiträge: 1.450
Themen: 155
Registriert seit: 18.03.2006
Die Funktion kannst du auch in der memberlist.php aufrufen. Der Aufruf ist also analog dazu:
PHP-Code:
$timeonline = nice_time($user['timeonline']);
und dann $timeonline im Template dort einsetzen, wo du die Zeitangabe haben möchtest.
Beiträge: 213
Themen: 8
Registriert seit: 02.09.2009
MyBB-Version: 1.6.11
Danke Jan, leider funktioniert es so nicht. Hier mal der Code meiner memberlist.php:
Code:
define("IN_MYBB", 1);
define('THIS_SCRIPT', 'memberlist.php');
$templatelist = "memberlist,memberlist_member,memberlist_search,memberlist_user,memberlist_user_groupimage,memberlist_user_avatar";
$templatelist .= ",postbit_www,postbit_email,multipage_nextpage,multipage_page_current,multipage_page,multipage_start,multipage_end,multipage";
require_once "./global.php";
// Load global language phrases
$lang->load("memberlist");
if($mybb->settings['enablememberlist'] == 0)
{
error($lang->memberlist_disabled);
}
$plugins->run_hooks("memberlist_start");
add_breadcrumb($lang->nav_memberlist);
if($mybb->usergroup['canviewmemberlist'] == 0)
{
error_no_permission();
}
$timeonline = nice_time($user['timeonline']);
// Showing advanced search page?
if($mybb->input['action'] == "search")
...
Der Aufruf erfolgt wie von dir empfohlen per $timeonline. Fehlt eventuell eine require_once php Datei?
Anderenfalls würde es mir auch genügen, wenn ich den Online Sekundenzeit in Tage umrechnen kann.
Wie müsste ich dafür timeonline definieren?
Beiträge: 1.443
Themen: 95
Registriert seit: 15.12.2005
MyBB-Version: 1.6.x
$user ist dort noch nicht verfügbar. Suche mal nach:
PHP-Code:
while($user = $db->fetch_array($query))
Innerhalb dieser Schleife muss die Funktion aufgerufen werden.
Beiträge: 213
Themen: 8
Registriert seit: 02.09.2009
MyBB-Version: 1.6.11
Wow Querschläger, es funzt. Vielen Dank!