 |
 | |
| | | | |
|  |
 |
 |
|
|
| Zadając pytanie dotyczące PHPNuke podaj jego wersje!! |
| Autor |
Wiadomość |
Barciu
~user

Dołączył(a): 7.08.2006
Posty: 16
Status: Offline
|
Wysłany: 31 Gru 2007 16:49:01
|
|
UA: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11 |
Chciałbym nieco zmodyfikować blok o nazwie "Who is online"
Obecnie:
| Kod: |
<?php
/************************************************************************/
/* PHP-NUKE: Web Portal System */
/* =========================== */
/* */
/* Copyright (c) 2005 by Francisco Burzi */
/* http://phpnuke.org */
/* */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License. */
/************************************************************************/
if (eregi("block-Who_is_Online.php", $_SERVER['PHP_SELF'])) {
Header("Location: index.php");
die();
}
global $user, $cookie, $prefix, $db, $user_prefix;
cookiedecode($user);
$ip = $_SERVER["REMOTE_ADDR"];
$uname = $cookie[1];
if (!isset($uname)) {
$uname = "$ip";
$guest = 1;
}
$guest_online_num = $db->sql_numrows($db->sql_query("SELECT * FROM ".$prefix."_session WHERE guest='1'"));
$member_online_num = $db->sql_numrows($db->sql_query("SELECT * FROM ".$prefix."_session WHERE guest='0'"));
$who_online_num = $guest_online_num + $member_online_num;
$who_online = "<center><font class=\"content\">"._CURRENTLY." $guest_online_num "._GUESTS." $member_online_num "._MEMBERS."<br>";
$content = "$who_online";
if (is_user($user)) {
if (is_active("Private_Messages")) {
$row = $db->sql_fetchrow($db->sql_query("SELECT user_id FROM ".$user_prefix."_users WHERE username='$uname'"));
$uid = intval($row['user_id']);
$newpm = $db->sql_numrows($db->sql_query("SELECT * FROM ".$prefix."_bbprivmsgs WHERE privmsgs_to_userid='$uid' AND (privmsgs_type='5' OR privmsgs_type='1')"));
}
}
$row2 = $db->sql_fetchrow($db->sql_query("SELECT title FROM ".$prefix."_blocks WHERE bkey='online'"));
$title = $row2['title'];
if (is_user($user)) {
$content .= "<br>"._YOUARELOGGED." <b>$uname</b>.<br>";
if (is_active("Private_Messages")) {
$row3 = $db->sql_fetchrow($db->sql_query("SELECT user_id FROM ".$user_prefix."_users WHERE username='$uname'"));
$uid = intval($row3['user_id']);
$numrow = $db->sql_numrows($db->sql_query("SELECT privmsgs_to_userid FROM ".$prefix."_bbprivmsgs WHERE privmsgs_to_userid='$uid' AND (privmsgs_type='1' OR privmsgs_type='5' OR privmsgs_type='0')"));
$content .= ""._YOUHAVE." <a href=\"modules.php?name=Private_Messages\"><b>$numrow</b></a> "._PRIVATEMSG."";
}
$content .= "</font></center>";
} else {
$content .= "<br>"._YOUAREANON."</font></center>";
}
?> |
Chciałbym dodać opcje: {TOTAL_USERS}{TOTAL_USERS_ONLINE}
Lecz nie wiem jak się do tego zabrać
|
|
|
|
|
|
|
 |
|
|
 |
antek
~user

Dołączył(a): 19.05.2006
Posty: 44
Pochwał: 2
Status: Offline
|
Wysłany: 3 Sty 2008 13:20:08
|
|
UA: Opera/9.25 (Windows NT 5.1; U; pl) |
A mozna cos wiecej?
| Kod: |
SELECT Count(*) FROM ".$user_prefix."_users
|
Zwroci liczbe uzytkownikow. Liczba uzytkownikow online juz jest w zmiennej $member_online_num.
|
|
|
_________________ http://kolektyw.org |
|
|
|
 |
dudi
@admin

Dołączył(a): 13.12.2004
Posty: 3154
Pochwał: 330
Skąd: Tychy
Status: Offline
|
Wysłany: 3 Sty 2008 15:24:13
|
|
UA: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11 |
~antek po co liczyć wszystko ( * w zapytaniu ) lepiej/wydajniej będzie skorzystać z kolumny ID (przy okazji jest to główny indeks tabeli, co znacznie przyśpieszy wykonanie tego zapytania )
| Kod: |
$sql = "SELECT count(id) as total FROM ".$user_prefix."_users";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$total_users = $row['total'] |
Liczbę wszystkich użytkowników masz teraz w zmiennej $total_users,
a liczbę uzytkowników onlina - tak jak napisał ~antek - w zmiennej $who_online_num
|
|
|
_________________ Pomocy udzielam TYLKO na forum !!! |
|
|
|
 |
|
|
|
|
Zobacz następny temat
Zobacz poprzedni temat
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz dołączać plików na tym forum Możesz ściągać pliki na tym forum |
|
|
|
|
|
|
|