[advanced search]
 

Go Back   NamePros.com > Discussion > Web Design & Development > Programming

Programming PHP, Perl, Ruby on Rails, AJAX, HTML, XHTML, CSS, JavaScript, MySQL and any other coding topics.


Closed Thread
 
LinkBack Thread Tools
Old 10-24-2006, 04:19 PM   #1 (permalink)
Straight from Sweden
 
Jawn's Avatar
 
Join Date: Oct 2006
Location: Sweden
Posts: 206
100.00 NP$ (Donate)

Jawn has a spectacular aura aboutJawn has a spectacular aura aboutJawn has a spectacular aura about

Animal Rescue
count ip numbers to specific member.

Heya all im in need of some help.
Im currently rebuilding my toplist software.
I have over 1200 members, each one got a tracker (image) which stores every unique(IP) that visits their blog. the toplist ranks blogs on unique visitors.

Now im trying to create a php file which should be executed every 30 minutes to rerank the websites on the toplist.

I want this to be so optimized as possible, someone told me about DESTINCT in sql but not sure what he meant.

Got two tables one for members and one for unique ips which are set to be unique.
Not sure how to build it.

Would appreciate if someone could help me.

Best Regards
Jawn
Jawn is offline  
Old 10-24-2006, 06:28 PM   #2 (permalink)
 
BillyConnite's Avatar
 
Join Date: Jul 2005
Location: Coffs H, Australia
Posts: 3,107
47.00 NP$ (Donate)

BillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant future

Wildlife Parkinson's Disease Parkinson's Disease
Hey John,

DISTINCT is where SQL will grab only 1 of each value in a table, for example:
Say we had these entries in a table:
1.0.0.0
1.0.0.0
1.2.0.0
1.0.0.0
1.2.6.3

Using DISTINCT would bring up only these results:
1.0.0.0
1.2.0.0
1.2.6.3

Then you can simply use mysql_num_rows to count the number of results given, hence giving you the number of unique IP's.

So, using sql, to get the number of unique IP's could be done like this:
PHP Code:
// grab unique IPs from the table, where the username is 'username'
$sql="select distinct ip from ip_table where username='username' limit 1";
// make sql do it
$result=mysql_query($sql);
// grab the number of rows given (number of unique ip addresses)
$uniques=mysql_num_rows($result);
Untested, but that should grab the number of unique IP's from a table.

Not sure what topsites you're using, so you would have to alter that obviously for it to work. Not sure how you would rerank the sites though, as I haven't bothered looking into how any of the topsites systems work.

All the best,
Rhett.
__________________
<?php if(1===1){ $computer="fine."; }else{ $computer="broken."; } echo "Your computer is ".$computer; ?>

Last edited by BillyConnite; 10-24-2006 at 07:05 PM.
BillyConnite is offline  
Old 10-24-2006, 06:45 PM   #3 (permalink)
Dan
Buy my domains.
 
Dan's Avatar
 
Join Date: Feb 2006
Posts: 2,801
56.00 NP$ (Donate)

Dan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant future

Autism Autism Autism Autism Autism Autism Autism
1.0.0.0 is a unique IP many times.. it should still count as a person (or unique IP). [According to what you wrote, it doesn't.]

Also, the last line in your code should be rows, not rwos.
Dan is offline  
Old 10-24-2006, 07:05 PM   #4 (permalink)
 
BillyConnite's Avatar
 
Join Date: Jul 2005
Location: Coffs H, Australia
Posts: 3,107
47.00 NP$ (Donate)

BillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant futureBillyConnite has a brilliant future

Wildlife Parkinson's Disease Parkinson's Disease
Quote:
Originally Posted by Dan
1.0.0.0 is a unique IP many times.. it should still count as a person (or unique IP). [According to what you wrote, it doesn't.]

Also, the last line in your code should be rows, not rwos.
Oops, meant to add 1.0.0.0 in there lol :P Thanks Dan.
__________________
<?php if(1===1){ $computer="fine."; }else{ $computer="broken."; } echo "Your computer is ".$computer; ?>
BillyConnite is offline  
Old 10-24-2006, 07:11 PM   #5 (permalink)
Dan
Buy my domains.
 
Dan's Avatar
 
Join Date: Feb 2006
Posts: 2,801
56.00 NP$ (Donate)

Dan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant futureDan has a brilliant future

Autism Autism Autism Autism Autism Autism Autism
Alrighty, that was confusing me.
Dan is offline  
Old 10-25-2006, 03:12 AM   #6 (permalink)
Straight from Sweden
 
Jawn's Avatar
 
Join Date: Oct 2006
Location: Sweden
Posts: 206
100.00 NP$ (Donate)

Jawn has a spectacular aura aboutJawn has a spectacular aura aboutJawn has a spectacular aura about

Animal Rescue
Hey guys thanks for taking the time, this is what i have done so far but i very doubt this is the best/fastest way.

$
PHP Code:
count = 0;
$data = mysql_db_query($databaseName, "SELECT site_id, totalunique, uniquehits FROM evots_site WHERE site_id > 0");
while(
$row = mysql_fetch_array($data)) {
    
$count ++;
    
$totalUnique    = $row['totalunique'];
    
$Unique     = $row['uniquehits'];
    
$siteID        = $row['site_id'];

    
$data2 = mysql_db_query($databaseName, "SELECT ip FROM evots_tracker WHERE site_id=$siteID ORDER BY site_id");
    
$Visits = mysql_num_rows($data2);
    Print
$userID . "$count,    TotalUnique $totalUnique     Unique $Unique,     Visits $Visits     SiteID $siteID<br>\n";
    
$updatedUnique = $Visits;
    
$totalUnique = $totalUnique - $Unique + $Visits;
    
mysql_db_query($databaseName, "UPDATE evots_site SET `uniquehits`='$updatedUnique', totalunique='$totalUnique' WHERE site_id = $siteID");

}
Jawn is offline  
Old 10-27-2006, 05:15 AM   #7 (permalink)
Straight from Sweden
 
Jawn's Avatar
 
Join Date: Oct 2006
Location: Sweden
Posts: 206
100.00 NP$ (Donate)

Jawn has a spectacular aura aboutJawn has a spectacular aura aboutJawn has a spectacular aura about

Animal Rescue
no one?
Jawn is offline  
Closed Thread


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Site Sponsors
Advertise your business at NamePros

All times are GMT -7. The time now is 01:34 AM.


Powered by: vBulletin® Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
Template-Modifications by TMS
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85