Statisktik nachbauen für Drupal 6
Eingetragen von lubino (51)
am 04.12.2008 - 18:51 Uhr in
am 04.12.2008 - 18:51 Uhr in
Hallo zusammen,
ich würde gerne so eine Statistik wie drupalcenter.de nachbauen. im Forum habe
ich erfahren das sich dabei um kein eigenes Module, sondern um ein Code-Snipsel dreht.
Man bräuchte diesen nur in ein Node oder Block einbauen und dann läuft das.
Doch leider bei mir nicht. kann mir einer helfen?
http://www.drupalcenter.de/node/211
<?php
$number = db_result(db_query('SELECT COUNT(uid) AS number FROM {users} WHERE status=1'));
if (
user_access('access content')) {
// Count users with activity in the past defined period.
$time_period = variable_get('user_block_seconds_online', 900);
// Perform database queries to gather online user lists.
$guests = db_fetch_object(db_query('SELECT COUNT(sid) AS count FROM {sessions} WHERE timestamp >= %d AND uid = 0', time() - $time_period));
$users = db_query('SELECT uid, name, access FROM {users} WHERE access >= %d AND uid != 0 ORDER BY access DESC', time() - $time_period);
$total_users = db_num_rows($users);
// Format the output with proper grammar.
$output=t('Out of %regs registered users ', array('%regs' => $number));
if ($total_users == 1 && $guests->count == 1) {
$output .= t('%members and %visitors online.', array('%members' => format_plural($total_users, 'there is currently 1 user', 'there are currently @count users'), '%visitors' => format_plural($guests->count, '1 guest', '@count guests')));
}
else {
$output .= t('there are currently %members and %visitors online.', array('%members' => format_plural($total_users, '1 user', '@count users'), '%visitors' => format_plural($guests->count, '1 guest', '@count guests')));
}
// Display a list of currently online users.
$max_users = variable_get('user_block_max_list_count', 10);
if ($total_users && $max_users) {
$items = array();
while (
$max_users-- && $account = db_fetch_object($users)) {
$items[] = $account;
}
$output .= theme('user_list', $items, t('Online users'));
}
}
return
$output;
?>
- Anmelden oder Registrieren um Kommentare zu schreiben
Was bekommst du?
am 05.12.2008 - 11:47 Uhr
... und dann läuft das. Doch leider bei mir nicht.
Forenbeiträge, in denen um Hilfe gefragt wird, sollten mindestens folgende Informationen enthalten:
Punkt 1 hast du schon gut erläutert (du willst einen Statistik-Block wie auch hier auf der Site).
Punkt 2 ist etwas mager; der Quelltext ist da, aber hast du z.B. auch das Eingabeformat auf PHP gesetzt?
Punkt 3 ist mit "Man bräuchte diesen nur in ein Node oder Block einbauen und dann läuft das. Doch leider bei mir nicht." einfach zu wenig.
--
ergänzent
am 06.12.2008 - 18:54 Uhr
2. ich habe mir den Code geschnappt und in ein Node gepackt dann von Full HTML auf PHP-Code
gestellt. Da das nicht geplapt hat, habe ich es nochmal mit einen Block versucht.
Dabei kam immer die gleiche Fehlermeldung
3.
Fatal error: Call to undefined function db_num_rows() in /usr/www/hosting/lubino/html/includes/common.inc(1547) : eval()'d code on line 13
Verbesser die Forumsuche. Makiere Deinen Titel mit [gelöst] wenn dein Frage gelöst wurde,
HILFE
am 04.03.2009 - 19:18 Uhr
Wie wurde dieses Problem denn gelöst? Hab nämlich genau das gleiche Problem. Vielleicht hat einer eine Lösung dafür.
------------------------------
2 + 2 ist 4 immer und überall!
Die Funktion db_num_rows
am 09.03.2009 - 22:43 Uhr
Die Funktion db_num_rows gibt es in D6 nicht mehr: Converting 5.x modules to 6.x: Remove db_num_rows() method. Es wird vorgeschlagen, bei Bedarf eine eigene Datenbankabfrage zu schreiben, die für das Zählen zuständig ist.
--