PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MicroStats für vb3


Sebi
14.09.2003, 21:18
Hallo,

ich würde gerne bei mir im forum den MicroStats code einfügen.
so wie es auch nun bei vb.org zu sehen ist.
gibt es den irgendwo?

Exodus
15.09.2003, 17:14
wollten die nich erst updaten wenn die final raus kommt? Jetzt is ja die Hack Datenbank weg kommt hoffentlich noch und das WYSIWYG Teil kann man sehr schlecht erkennen! ;)

h75
20.04.2004, 01:59
Also, da ich mich jetzt ein paar Tage mit debug und der funktions.php beschäftigt habe, hier jetzt mal 3 Varianten, der Microstats (Original by TECK), ich weis zwar net wer das ist, aber sein Name gehört hierhin :cool:

Ich weis zwar, das es noch irgendwo hier einen Thread mit diesem Thema gibt, aber erstens finde ich den grad net und zweitens ist der da net erklärt..
Und doppel hält besser !

Aussdem was genau da vor sich geht. Zumindest aus meiner Sicht gesehen. Aber ich denke, das müsste schon so stimmen. Wenn nicht, dann vollstrecke das, was in der letzten Zeile, dieses Posts steht.... :p

So. Los geht's ...

Die Microstats baut man in die Datei functions.php im includes-Verzeichnis ein.

In die Datei /includes/functions.php

Finde: (etwa in der Mitte, ca. Zeile 1840-1850, je nach dem ob man Hacks eingebaut hat oder nicht)
// ####################################################################
// temporary code
global $_TEMPLATEQUERIES, $tempusagecache, $DEVDEBUG, $_SERVER, $debug;

und füge darunter ein: (Diese erste Variante ist nur für Admins und Mods sichtbar. Und zwar am Ende einer jeden Seite.

Variante 1:
// Microstats Hack for admins - START
if ($bbuserinfo[usergroupid]==6) {
$pageendtime = microtime();
$starttime = explode(' ', $pagestarttime);
$endtime = explode(' ', $pageendtime);
$totaltime = vb_number_format($endtime[0] - $starttime[0] + $endtime[1] - $starttime[1], 5);
if ($stats=@exec('uptime')) {
preg_match('/averages?: ([0-9\.]+),[\s]+([0-9\.]+),[\s]+([0-9\.]+)/',$stats,$regs);
$serverload=' [Server Loads: <b>'.$regs[1].'</b> » '.$regs[2].' : '.$regs[3].']';
}
$debughtml = "<center><span class=\"smallfont\">Seite generiert in <b>$totaltime</b> Sek.<br>mit <b>$query_count</b> Queries." . iif($_TEMPLATEQUERIES, " (<br><b>" . sizeof($_TEMPLATEQUERIES) . "</b> Queries for Uncached Templates)", '') . "$serverload</span></center>";
$vartext = str_replace('</body>', "$debughtml\n</body>", $vartext);
}
//Microstats Hack for admins - ENDE


Wer den für alle User zugänglich machen möchte, kann diesen hier nehmen. ist der gleich wie oben, jedoch ohne

(erste Zeile) if ($bbuserinfo[usergroupid]==6) {
(letzte Zeile) }

Variante 2:
// Microstats Hack for ALL - START
$pageendtime = microtime();
$starttime = explode(' ', $pagestarttime);
$endtime = explode(' ', $pageendtime);
$totaltime = vb_number_format($endtime[0] - $starttime[0] + $endtime[1] - $starttime[1], 5);
if ($stats=@exec('uptime')) {
preg_match('/averages?: ([0-9\.]+),[\s]+([0-9\.]+),[\s]+([0-9\.]+)/',$stats,$regs);
$serverload=' [Server Loads: <b>'.$regs[1].'</b> » '.$regs[2].' : '.$regs[3].']';
}
$debughtml = "<center><span class=\"smallfont\">Seite generiert in <b>$totaltime</b> Sek.<br>mit <b>$query_count</b> Queries." . iif($_TEMPLATEQUERIES, " (<br><b>" . sizeof($_TEMPLATEQUERIES) . "</b> Queries for Uncached Templates)", '') . "$serverload</span></center>";
$vartext = str_replace('</body>', "$debughtml\n</body>", $vartext);
//Microstats Hack for all - ENDE


Um den Hack mal zu erklären. Der entfernt im am Ende </body>-Befehl und ersetzt es durch folgenden Wert:

<center><span class="smallfont">Seite generiert <b>0,15652</b> Sekunden mit <b>9</b> Queries.</span></center>
</body>

Denn irgendwie muss er ja wissen, wo der hinsoll.. :)

Wenn jetzt jemand diese Zeile woanders haben möchte, dann einfach tricksen
Ich hab im Template 'Navbar' <!-- micccrostatsinfo --> unter das "Willkommen, xxxx" gesetzt. Das muss dann auch wissen. Also statt dem </body> entfernt der jetzt das von mir vorgegebene <!-- micccrostatsinfo --> und fügt gleichzeitig drüber die Microstats ein
Das sieht dann so aus.

Dan ist die Info allerdings nur nach erfolgreicher Registrierung/Anmeldung sichtbar.....

Variante 3: (Meine eigene)
// Microstats hack von H75
$pageendtime = microtime();
$starttime = explode(' ', $pagestarttime);
$endtime = explode(' ', $pageendtime);
$totaltime = vb_number_format($endtime[0] - $starttime[0] + $endtime[1] - $starttime[1], 5);
if ($stats=@exec('uptime')) {
preg_match('/averages?: ([0-9\.]+),[\s]+([0-9\.]+),[\s]+([0-9\.]+)/',$stats,$regs);
$serverload=' [Server Loads: <b>'.$regs[1].'</b> » '.$regs[2].' : '.$regs[3].']';
}
$debughtml = "<span class=\"smallfont\">Inhalt mit <b>$query_count</b> Queries in <b>$totaltime</b> Sekunden generiert." . iif($_TEMPLATEQUERIES, " <br>(<b>" . sizeof($_TEMPLATEQUERIES) . "</b> Queries for Uncached Templates)", '') . "$serverload</span>";
$vartext = str_replace('<!-- micccrostatsinfo -->', "$debughtml\n<!-- micccrostatsinfo -->", $vartext);
//Microstats Hack von H75

So erscheint dieses Zeile dann direkt da mans hinhaben will.
Live-Beispiel??? Dann klick auf den Halloo-Banner in meiner Signatur. :D

Man möge mich auspeitschen, wenn ich Fehler gemacht habe. Aber eigentlich nicht, da ichs mehrfach kontrolliert und gelesen habe.. :p und immer die Vorschau-Funktion benutze...

SchwarzeGenetik
22.04.2008, 22:33
hi!
funktioniert das auch mit der 3.7.er?
wenn nicht, was dann?

Gruß SG :)

MikeD
23.04.2008, 10:18
hi!
funktioniert das auch mit der 3.7.er?
wenn nicht, was dann?

Gruß SG :)Warum so kompliziert, wenn vB das von Hause aus drin hat. Solltest mal den Debug Mode einschalten, dann sieht man die umfangreichen Informationen unterhalb des Footers! Mehr Infos braucht man doch eh nicht. Um nicht zu vergessen: Dieses Thema ist von 2003!!!

SchwarzeGenetik
23.04.2008, 14:55
den debugmodus kenn ich und verwende ich. nur möchte ich das ja am laufenden forum unten stehen haben. und dafür is der debugmodus keine gute lösung... ;)
ich denke eher an ein produkt wie vbmicrostats, nur möchte ich nichts in php-dateien ändern zu müssen.

Gruß SG

Mystics
23.04.2008, 15:53
Das ist mit einem unveränderten vBulletin, also ohne Plug-in oder Modifikation der Dateien, leider nicht möglich.

Bitte versuche es in einem unserer Foren für vBulletin-Modifikationen:
http://www.vbulletin-germany.org
http://www.vbulletin.org