Hallo leute,
habe eine weitere frage,
wie kann man diese Funktion im forum einfügen?
Wer war heute Online? öffnen/schließen
siehe hier bluedesigns.de/index.php?forum
Gruß
Viper
Hier kann eine Notiz zum Merk-Eintrag hinzugefügt werden (optional)
| Geschlossen | ||
$ts1 = 0; // Hier muss der Timestamp von nacht 0:00 rein $ts2 = 0; // Hier muss der Timestamp von morgen Mitternacht 0:00 $sql = ' SELECT * FROM prefix_user WHERE llogin>'.$ts1.' AND llogin<'.$ts2.' ';
$time = mktime (0,0,0,date("n"),date("j"),date("Y"));
$query = 'SELECT `id`,`name` FROM `prefix_user` WHERE llogin > '.$time;
$query = db_query($query);
$cache = '';
while ($row = db_fetch_assoc($query)) {
if (!empty($cache)) $cache .= ', ';
$cache .= '<a href="index.php?user-details-'.$row['id'].'">'.$row['name'].'</a>';
}
echo 'heute waren schon online: '.$cache;
$tpl->set_ar_out($stats_array,4);
<div>
<a href="#" onClick='if(this.parentNode.getElementsByTagName("div")[0].style.display == "") { this.parentNode.getElementsByTagName("div")[0].style.display == "none"; } else { this.parentNode.getElementsByTagName("div")[0].style.display == ""; } return false;'>Wer war heute online <small>Öffnen / Schließen</small></a>
<div>
HIER dein Text
</div>
</div>
$time = mktime (0,0,0,date("n"),date("j"),date("Y"));
$query = 'SELECT `id`,`name` FROM `prefix_user` WHERE llogin > '.$time;
$query = db_query($query);
$cache = '';
while ($row = db_fetch_assoc($query)) {
if (!empty($cache)) $cache .= ', ';
$cache .= '<a href="index.php?user-details-'.$row['id'].'">'.$row['name'].'</a>';
}
echo '<div>
<a href="#" onClick=\'if(this.parentNode.getElementsByTagName("div")[0].style.display == "") { this.parentNode.getElementsByTagName("div")[0].style.display == "none"; } else { this.parentNode.getElementsByTagName("div")[0].style.display == ""; } return false;\'>Wer war heute online <small>Öffnen / Schließen</small></a>
<div>
'.$cache.'
</div>
</div>';
<tr>
<td class="ForumClass" style="background-color:#FFF;"<td><a style="cursor:pointer;" onclick="toggleDiv('userliste_today');">Wer war heute Online? <i style="font-size:9px;">öffnen/schließen</i></a><br /><div id="userliste_today" style="display:none;">
{userliste_today}</div></td>
</tr>
JavaScript kommt in den Head des Desings:
<script type="text/javascript">
function toggleDiv(layerName) {
var element = document.getElementById(layerName);
if(element.style.display =="none")
element.style.display="block";
else
element.style.display="none";
}
</script>
HTML kommt in den Body des Designs:
//Link zum öffnen
<a style="cursor:pointer;" onclick="toggleDiv('%DIVID%');">Wer war heute Online? <i style="font-size:9px;">öffnen/schließen</i></a>
//Div zum anzeigen
<div id="%DIVID%" style="display:none;">
Inhalt der dargestellt werden soll!
</div>
%DIVID% == ID des Divs das dargestellt werden soll
1. die Funktion hinzufügen in die datei "include/contents/forum/show_forum.php"
vor "$stats_array = array (" einfügen
function user_online_today_liste(){
$OnListe = '';
$dif = mktime(0,0,0,date('m'),date('d'),date('Y'));
$erg = db_query("SELECT a.id, a.name, a.llogin, b.bez, a.spezrank FROM `prefix_user` a LEFT JOIN prefix_ranks b ON b.id = a.spezrank WHERE a.llogin > '". $dif."' ORDER BY llogin");
while($row = db_fetch_object($erg)) {
if ( $row->spezrank <> 0 ) {
$OnListe .= '<a class="'.$row->bez.'" title="'.$row->bez.'" href="index.php?user-details-'.$row->id.'">'.$row->name.'</a>, ';
} else {
$OnListe .= '<a href="index.php?user-details-'.$row->id.'">'.$row->name.'</a>, ';
}
}
$OnListe = substr($OnListe,0,strlen($OnListe) - 3);
return ($OnListe);
}
2. einen Eintrag hinzufügen in der datei "include/contents/forum/show_forum.php"
Ganz unten am ede
$stats_array = array (
.......
'userliste' => user_online_liste(),
'newewst_user' => newewstuser(),
// bitte das komma nicht vergessen sonnst fehler
'userliste_today' => user_online_today_liste()
3. im template "include/templates/forum/showforum.htm"
im gewünschtem ort
"{userliste_today}" ohne "" einfügen

##
###
####
##### user online liste
function user_online_liste(){
$OnListe = '';
$dif = date('Y-m-d H:i:s', time() - USERUPTIME);
$erg = db_query("SELECT DISTINCT uid, name, prefix_ranks.bez, spezrank FROM `prefix_online` left join prefix_user on prefix_user.id = prefix_online.uid left join prefix_ranks ON prefix_ranks.id = prefix_user.spezrank WHERE uid > 0 and uptime > '". $dif."'");
while($row = db_fetch_object($erg)) {
if ( $row->spezrank <> 0 ) {
$OnListe .= '<a class="'.$row->bez.'" title="'.$row->bez.'" href="index.php?user-details-'.$row->uid.'">'.$row->name.'</a> , ';
} else {
$OnListe .= '<a href="index.php?user-details-'.$row->uid.'">'.$row->name.'</a> , ';
}
}
$OnListe = substr($OnListe,0,strlen($OnListe) - 3);
return ($OnListe);
}
a.Admin, span.Admin{
color:#fc0202;
}
a.Projektleiter, span.Projektleiter{
color:#fc0202;
}
a.Site-Admin, span.Site-Admin{
color:#990000;
}
a.Co-Admin, span.Co-Admin{
color:#ff5a00;
}
a.Moderator, span.Moderator{
color:#0060ff;
}
a.Coder, span.Coder{
color:#8301fc;
}
a.Designer, span.Designer{
color:#5ed705;
}

SELECT `id`, `name` FROM `user` ORDER BY `id` DESC LIMIT 1



##
###
####
##### user online liste
function user_online_liste(){
$OnListe = '';
$dif = date('Y-m-d H:i:s', time() - USERUPTIME);
$erg = db_query("SELECT DISTINCT uid, name, prefix_ranks.bez, spezrank FROM `prefix_online` left join prefix_user on prefix_user.id = prefix_online.uid left join prefix_ranks ON prefix_ranks.id = prefix_user.spezrank WHERE uid > 0 and uptime > '". $dif."'");
while($row = db_fetch_object($erg)) {
if ( $row->spezrank <> 0 ) {
$OnListe .= '<a class="'.$row->bez.'" title="'.$row->bez.'" href="index.php?user-details-'.$row->uid.'">'.$row->name.'</a> , ';
} else {
$OnListe .= '<a href="index.php?user-details-'.$row->uid.'">'.$row->name.'</a> , ';
}
}
$OnListe = substr($OnListe,0,strlen($OnListe) - 3);
return ($OnListe);
}
// # user online list fuer admin + gaeste
function user_admin_online_liste () {
$OnListe = '';
$class = '';
$dif = date('Y-m-d H:i:s', time() - USERUPTIME);
$erg = db_query("SELECT DISTINCT uid, DATE_FORMAT(uptime, '%d.%m.%Y - %H:%i:%s') as datum, ipa, name FROM `prefix_online` left join prefix_user on prefix_user.id = prefix_online.uid WHERE uptime > '" . $dif . "' ORDER BY uid DESC");
while ($row = db_fetch_object($erg)) {
$name = $row->name;
if ($row->uid == 0) {
$name = 'Gast';
}
$host_patterns = array(
'/crawl-[0-9]{1,3}-[0-9]{1,3}-[0-9]{1,3}-[0-9]{1,3}\.googlebot\.com/si',
'/[a-z]*[0-9]*\.inktomisearch\.com/si',
'/[a-z]*[0-9]*\.ask\.com/si',
'/p[0-9A-F]*\.dip[0-9]*\.t-(dialin|ipconnect)\.(net|de)/si',
'/[0-9A-F]*\.ipt\.aol\.com/si',
'/dslb-[0-9]{3}-[0-9]{3}-[0-9]{3}-[0-9]{3}.pools.arcor-ip.net/si',
'/crawl[0-9]*\}exabot\.com/si',
'/[0-9A-Z]+\.adsl\.highway\.telekom\.at/si'
);
$host_names = array(
'Bot Google',
'Bot Inktomi/Yahoo',
'Bot Ask.com',
'T-Online',
'AOL',
'Arcor DSL',
'Bot Exalead',
'Telekom Austria DSL'
);
$class = ($class == 'Cmite' ? 'Cnorm' : 'Cmite');
$OnListe .= '<tr class="' . $class . '">';
$OnListe .= '<td>' . $name . '</td>';
$OnListe .= '<td>' . $row->datum . '</td>';
$OnListe .= '<td>' . $row->ipa . '</td>';
$OnListe .= '<td>' . preg_replace($host_patterns, $host_names, @gethostbyaddr ($row->ipa)) . '</td>';
$OnListe .= '</tr>';
}
// $OnListe = substr($OnListe,0,strlen($OnListe) - 3);
return ($OnListe);
}
a.Admin, span.Admin{
color:#8b008b;
}
a.Projektleiter, span.Projektleiter{
color:#fc0202;
}
a.Site-Admin, span.Site-Admin{
color:#990000;
}
a.Co-Admin, span.Co-Admin{
color:#ff5a00;
}
a.Moderator, span.Moderator{
color:#0060ff;
}
a.Member, span.Member{
color:#fc0202;
}
a.user, span.user{
color:#5ed705;
}




So richtig Klar wird mir allerdings nichts beim Lesen seiner Anleitung.
| Geschlossen | ||
![]() |
Zurück zu Module und Modifikationen | |