vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.0 Full Releases (https://vborg.vbsupport.ru/forumdisplay.php?f=33)
-   -   Who's online on non-vB page (with usernames, same rules as Who's Online on forumhome) (https://vborg.vbsupport.ru/showthread.php?t=60019)

Gary King 01-09-2004 10:00 PM

Who's online on non-vB page (with usernames, same rules as Who's Online on forumhome)
 
PLEASE CLICK ON THE INSTALL BUTTON IF YOU INSTALLED THIS! THANKS!

What does this hack do?

Using this hack, you can show who is currently on your forums from anywhere else on your website! The page, though, must be a PHP page.

If you want to display this information on another webpage by integrating it (which you'll probably want to ;)), just put
PHP Code:

<?php require_once("online.php"); ?>

or
PHP Code:

<?php

require_once("online_external.php");

?>

depending on the location of the online.php file

THE BELOW IS ONLY IF YOU ARE USING ONLINE.PHP

If you are using online.php, then this line of code MUST be at the top of the page!

If you don't want to show the total users online at the top of the page, though, then remove
PHP Code:

print $show

and copy that to wherever you want to show the info instead (remember to surround this with PHP tags, such as:
PHP Code:

<?php

print $show;

?>

THE ABOVE IS ONLY IF YOU ARE USING ONLINE.PHP

Features
  • supports phrases! :D
  • option to display either usernames or a total number of registered members instead
  • only administrators can see users who choose to be invisible

Instructions

Download the attached online.php if you want to show invisible users to administrators, etc., or download online_external.php if you don't want to worry as much about things :), and follow these instructions:
  1. Find
    PHP Code:

    $path "./vb3/"// path to your forums folder, normally /forum/ 

    , change the ./vb3/ to whatever the path is to your forums directory
  2. Find
    PHP Code:

    $showusernames 0// 1 to show usernames online, 0 to only show the number of users online 

    and change $showusernames to 1 if you want to display usernames, instead of the total number of registered members browsing

That's it! :D

idwf 01-10-2004 08:37 PM

Quote:

Unable to add cookies, header already sent.
File: /home/indeathw/public_html/index.php
Line: 19
allthough, http://www.indeathwefall.co.uk/online.php works?!

Gary King 01-10-2004 08:43 PM

Quote:

Originally Posted by idwf

Instructions updated, please check again :)

Boofo 01-10-2004 08:50 PM

You're not going to make it in a nice little table to match the forum?

azmi 01-10-2004 09:27 PM

Quote:

Originally Posted by Boofo
You're not going to make it in a nice little table to match the forum?

only logged in Users can show it.
-------------------
Unable to add cookies, header already sent.
File: N/A
Line: 0
--------------------
Another one with this problems?

Gary King 01-10-2004 09:49 PM

Quote:

Originally Posted by azmi
only logged in Users can show it.
-------------------
Unable to add cookies, header already sent.
File: N/A
Line: 0
--------------------
Another one with this problems?

You have to put the require_once() at the top of any file.

idwf 01-10-2004 10:10 PM

Quote:

Originally Posted by Gary W
You have to put the require_once() at the top of any file.

thanks. will try again. :)

azmi 01-10-2004 10:25 PM

no, the same Problem.

but is it a must to have cookies?
there must be a simple way to get this

Members: 8 Guests: 10

nothing else!

------------------------------
@Admins
clicking for smilies brings me always to the top (#)

eva2000 01-10-2004 11:08 PM

2 bugs for me

1. i get Member instead of Members - the 's' is missing even though i have more than 1 member online
2. members online figure is incorrectly shown, i.e. on my forums there are 29-32 members online but this script shows 65 members online ? i.e. http://animeboards.com/joinwink.php

Gary King 01-10-2004 11:11 PM

Quote:

Originally Posted by azmi
no, the same Problem.

but is it a must to have cookies?
there must be a simple way to get this

Members: 8 Guests: 10

nothing else!

------------------------------
@Admins
clicking for smilies brings me always to the top (#)

Download online_external.php ;)

Gary King 01-10-2004 11:12 PM

Quote:

Originally Posted by idwf
thanks. will try again. :)

If doesn't work, use online_external.php instead :)

Gary King 01-10-2004 11:26 PM

Quote:

Originally Posted by eva2000
2 bugs for me

1. i get Member instead of Members - the 's' is missing even though i have more than 1 member online
2. members online figure is incorrectly shown, i.e. on my forums there are 29-32 members online but this script shows 65 members online ? i.e. http://animeboards.com/joinwink.php

Okay, try the new files I attached :)

eva2000 01-10-2004 11:26 PM

also it would be nice to add code to check if forum is closed or not and display "forum is down for maintenance" message if closed ;)

eva2000 01-10-2004 11:31 PM

Quote:

Originally Posted by Gary W
Okay, try the new files I attached :)

well new version reports less members than old version but still more than there really is heh

real members = 27
old script = 65
new version = 47

Gary King 01-10-2004 11:39 PM

It shows this for me:

Hack: Currently online: Members online: 6. Guests online: 12.
Forums: Currently Active Users: 16 (5 members and 12 guests)

Gary King 01-10-2004 11:41 PM

Anyways, I'm not too sure on why it doesn't work exactly correct on your forums, works fine on mine :)

azmi 01-11-2004 12:02 AM

great job!

big thx -> *install*

eva2000 01-11-2004 02:39 AM

Quote:

Originally Posted by Gary W
Anyways, I'm not too sure on why it doesn't work exactly correct on your forums, works fine on mine :)

hmmm

http://animeboards.com/joinwink.php shows 202 members while forums really only have 39 members ???

idwf 01-11-2004 07:29 AM

tbh, i think that this should have been a BETA release, rather than a full one .

Also, i would like to see Members online and guests online :p

Gary King 01-11-2004 02:43 PM

Quote:

Originally Posted by idwf
tbh, i think that this should have been a BETA release, rather than a full one .

Also, i would like to see Members online and guests online :p

Yeah it has the s when there is more than 1, or should anyways :) It's like that on my test forum :)

Loon 01-11-2004 04:25 PM

Hi

I had a similar problem when i made some external site stats for my board. I think it's counting the total number of sessions in the table for members rather than for each unique id

replace:

PHP Code:

SELECT DISTINCT COUNT(userid

with:

PHP Code:

SELECT COUNT(DISTINCT userid

And it should solve the incorrect count of members.

Gary King 01-11-2004 05:31 PM

Quote:

Originally Posted by Loon
Hi

I had a similar problem when i made some external site stats for my board. I think it's counting the total number of sessions in the table for members rather than for each unique id

replace:

PHP Code:

SELECT DISTINCT COUNT(userid

with:

PHP Code:

SELECT COUNT(DISTINCT userid

And it should solve the incorrect count of members.

Okay could someone please confirm and if it is the correct query then let me know, I'll change in the instructions :)

eva2000 01-12-2004 04:54 AM

Quote:

Originally Posted by Gary W
Okay could someone please confirm and if it is the correct query then let me know, I'll change in the instructions :)

spot on.. .
PHP Code:

SELECT COUNT(DISTINCT userid

fixed it

Gary King 01-12-2004 11:04 PM

Quote:

Originally Posted by eva2000
spot on.. .
PHP Code:

SELECT COUNT(DISTINCT userid

fixed it

Okay I'll change in instructions then :)

Yuneek 03-04-2004 05:22 PM

Quote:

Originally Posted by Gary W
Okay I'll change in instructions then :)

Okay.. I'm kind of confused.

What directory should online.php be located? I want all the names of the users online to be listed, so, I think I eed to use online.php. I tried putting it in the same directory as my files I want it to be displayed on, but it couldn't find the files it needed such as global.php. So, I tried to put it in the /forum directory, but it overwrote the online.php that vB needs, so I didn't want to do that.

What do I do?

Gary King 03-04-2004 06:41 PM

If you place the online.php outside of vB directory then just change the path to something else in the require_once() code.

Yuneek 03-05-2004 05:02 PM

Errors:
Quote:

Warning: chdir(): No such file or directory (errno 2) in /home/dp/public_html/beta/online.php on line 9

Warning: main(./includes/init.php): failed to open stream: No such file or directory in /home/dp/public_html/forum/global.php on line 18

Fatal error: main(): Failed opening required './includes/init.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/dp/public_html/forum/global.php on line 18
Online.php:
Quote:

<?php

error_reporting(E_ALL & ~E_NOTICE);

$path = "./forum/"; // path to your forums folder, normally /forum/

$phrasegroups = array('wol');

chdir($path);
require_once("/home/dp/public_html/forum/global.php");

$showusernames = 1; // 1 to show usernames online, 0 to only show the number of users online

$datecut = time()-$vboptions['cookietimeout'];

if ($showusernames == 1)
{
$regmembers = $DB_site->query("SELECT DISTINCT username,options FROM ".$tableprefix."user,".$tableprefix."session
WHERE ".$tableprefix."session.userid=".$tableprefix."use r.userid AND ".$tableprefix."session.lastactivity>$datecut
ORDER BY username ASC") or exit("oops2");

while($regmember = $DB_site->fetch_array($regmembers))
{
$regmember['options'] = intval($regmember['options']);

foreach($_USEROPTIONS as $optionname => $optionval)
{
$regmember["$optionname"] = iif($regmember['options'] & $optionval, 1, 0);
}

if ((($regmember['invisible'] == 0)) and $regmemberson or ($bbuserinfo['usergroupid'] == 6 and $regmember['invisible'] == 1))
{
$regmemberson .= ", ";
}

$regmembercomma++;
if ($regmember['invisible'] == 0 or $bbuserinfo['usergroupid'] == 6) {
if ($regmember['invisible'] == 1) {
$userinvisible = "*";
}

$regmemberson .= $regmember['username'].$userinvisible;
} else {
$regmembercomma++;
}
}

if (!$regmemberson)
{
$regmemberson = "(none)";
}

} else {
$regmembers = $DB_site->query_first("SELECT COUNT(DISTINCT userid) AS membersonline FROM ".$tableprefix."session WHERE userid>0 AND ".$tableprefix."session.lastactivity>$datecut" ) or exit("oops3");

$regmemberson = number_format($regmembers['membersonline']);
}

$howmany = substr_count($regmemberson,",");

if (($showusernames == 1 and $howmany >= 1) or ($showusernames == 0 and $regmemberson > 1))
{
$memberstext = $vbphrase['members'];
}
else
{
$memberstext = $vbphrase['member'];
}

$guests = $DB_site->query_first("SELECT COUNT(userid) AS guestsonline FROM ".$tableprefix."session WHERE userid=0 AND ".$tableprefix."session.lastactivity>$datecut" ) or exit("oops4");
if ($guests['guestsonline'] > 1)
{
$gueststext = $vbphrase['guests'];
}
else
{
$gueststext = $vbphrase['guest'];
}
$guestson = number_format($guests['guestsonline']);

$show = $memberstext.' '.strtolower($vbphrase['online']).': '.$regmemberson.'. '.$gueststext.' '.strtolower($vbphrase['online']).': '.$guestson.'.';
?>
Top of PHP page I want to include members on:
Quote:

<?php require_once("online.php"); ?>
Table I want members to show up in, same page as last quote:
Quote:

<table class="online">
<tr>
<td class="online" valign="top">
<span class="head">Who's Online</span><br /><br />
<?php
print $show;
?>
</td>
</tr>
</table>
Online.php and the file I want the members to show up on are in the same directory which is public_html/beta/ and the forum is public_html/forum/.

What am I doing wrong?

Gary King 03-05-2004 07:34 PM

Quote:

Originally Posted by Yuneek
Errors:


Online.php:


Top of PHP page I want to include members on:


Table I want members to show up in, same page as last quote:


Online.php and the file I want the members to show up on are in the same directory which is public_html/beta/ and the forum is public_html/forum/.

What am I doing wrong?

Change $path = "./forum/"; to $path = "./../forum/";

webrats 03-05-2004 09:08 PM

if i still this on a non vb page will it show the users browseing that page as guest?

Gary King 03-05-2004 10:38 PM

Quote:

Originally Posted by webrats
if i still this on a non vb page will it show the users browseing that page as guest?

Yep it should I believe.

webrats 03-05-2004 10:41 PM

i don see them showing up in my whos online

I have another way of tracking active users and it shows 250 in the last 5 min and this one that track it in 30 min is showing 120

Gary King 03-07-2004 04:37 PM

Quote:

Originally Posted by webrats
i don see them showing up in my whos online


I have another way of tracking active users and it shows 250 in the last 5 min and this one that track it in 30 min is showing 120

What's the other way that you use?

webrats 03-07-2004 07:13 PM

Quote:

Originally Posted by Gary W
What's the other way that you use?

http://ripper.webrats.com

at the bottom i have the code

its not adding to the guest when someone visits that page

SlackerAPM 03-11-2004 09:33 PM

This is exactly the kind of thing I'm looking for however, I've had a few problems:
  1. When using "online.php" everything is fine and working (formatting of the output text isn't great but that's easy enough to change). However, that's only the case while I'm logged into the boards, if I'm not logged in I get the "Unable to add cookies, header already sent." message. online.php works fine on it's own regardless of log in status, only the including seems to screw it up.
  2. Using "online_external.php" outputs results regardless of login status however the results displayed on my page are similar to "Members online: 00, 0, 0, 0, 0, 0, 0, 0, 0. Guests online: 26." This is the case on the standalone page too.
  3. I'm still don't fully understand the use of the
    PHP Code:

    "print $show;" 

    instructions, I'm probably a fool but they don't seem to be explained that clearly i.e. exactly which page we're adding this code to and whereabouts on the page it should be added to.
  4. One other small request, any chance that when usernames are displayed by choice the names are links to the corresponding users profile (new window)?

Thank you for listening to my moaning ;)

ga.net 04-11-2004 02:55 AM

hi! Is there a way to change the font style and size of this? Thanks in advance

TYorke 04-14-2004 04:54 AM

1. Can the user names include the links to their profiles? if so, how do I add them?

2. Can the extra "most users online ... " text be added? if so, how?

3. Finally can the extra bit "Who visited today" also be added? That'd kick ass!

Thanks!

TYorke 04-14-2004 04:56 AM

Quote:

Originally Posted by ga.net
hi! Is there a way to change the font style and size of this? Thanks in advance

Simple HTML will do the trick you can use the <span></span> tags around the $show variable perhaps? I haven't tried it myself but it may work such as:

<span class=\"format\">$show</span>

or something like that. Of course you would have to define .class in your stylesheet. :D

ga.net 04-15-2004 10:50 PM

Quote:

Originally Posted by TYorke
Simple HTML will do the trick you can use the <span></span> tags around the $show variable perhaps? I haven't tried it myself but it may work such as:

<span class=\"format\">$show</span>

or something like that. Of course you would have to define .class in your stylesheet. :D

thanks but grateful if you could give me a more detailed instruction since im not that good in html. Thanks

TYorke 04-16-2004 06:15 AM

instead of print $show maybe you can use

echo "<span style=\"font-family: Verdana; font-size: 12px\">$show</span>";

Obviously you can change the font-family and font-size to whatever else you want :)

ga.net 04-16-2004 10:07 PM

Great! it works! Thanks a lot pal! :)


All times are GMT. The time now is 04:48 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01483 seconds
  • Memory Usage 1,865KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (13)bbcode_php_printable
  • (25)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete