Php Problem - Unique Counter - my script isn't working correctly

free web hosting
Free Web Hosting > Computers & Tech > Programming > Scripting > PHP

Php Problem - Unique Counter - my script isn't working correctly

ChronicLoser
alright here's what I want to do: I made a counter to count unique visitors without a mysql. But the problem is that the '.dat' file I'm writing on (unique.dat) tends to become too big when I have too many visitors. Thus, I tried to add an if/then statement.

Kay, now here's the problem: even though this code successfully runs, it's not a hundred-percent accurate. Sometimes it rewrites a user's IP even though it is already on the '.dat' file. Even though it doesn't actually affect the $hits, I'd still like to know what I did wrong.

CODE

<?php
$filename = "unique.dat";

$file = file($filename);
$file = array_unique($file);
$hits = count($file);

$remote = $_SERVER["REMOTE_ADDR"];
$var = $_SERVER['PHP_SELF'];
$var = 'unique.dat';
$wholefile = file_get_contents($var);
preg_match_all("|$remote|U",$wholefile, $out, PREG_PATTERN_ORDER);

if(!($out[0][0] == $remote))
{
$fd = fopen ($filename , "a+");
$fout = fwrite ($fd , "$remote\n");
fclose($fd);
echo "bad";
}

echo $hits;
?>

hope someone could help me out here ^_^

 

 

 


Reply

coder2000
I see one error. You aren't looping through your array of ips to check each one. you just check to see if the first on in the array matches. Next why assign 'uniqe.dat' to two seperate variables as well why set $_SERVER['PHP_SELF'] and 'unique.dat' to the same variable?

Reply

ChronicLoser
Alright coder....i read your reply, and fixed up some things. The $_SERVER['PHP_SELF'] was completely unneccessary so i took it out. I was trying to something else earlier. The $var was also a careless mistake on my part so I took that out. I also changed around the if/then statement, but I wasn't sure what you meant when you said I was to loop through the arrays. I'm trying to match the ips using the preg_match function, so I don't think the loop would be needed...but correct me if I'm wrong cause I'm not the exactly the brightest person you could find

anyways, here's the edited code:
CODE

<?php

$filename = "unique.dat";

$file = file($filename);
$file = array_unique($file);
$hits = count($file);

$remote = $_SERVER["REMOTE_ADDR"];
$wholefile = file_get_contents($filename);

  if (preg_match ("/$remote/i", $wholefile))
  {
     echo $hits;
  }
  else
  {
     $fd = fopen ($filename , "a+");
     $fout = fwrite ($fd , "$remote\n");
     fclose($fd);
     echo $hits;
  }

?>

 

 

 


Reply

marijnnn
think problem is your preg match
if (preg_match ("/$remote/i", $wholefile))

i'd go for this:
if (preg_match("/^".$remote."$/i","$wholefile))

this will asure that
192.168.34.1 and 192.168.34.10 are detected as different addresses.
same for 181.x.y.z and 81.x.y.z.

but i don't know why the program would add ip's twice :s
maybe if the file can't be accessed? i think that might cause the if to be false because $wholefile would be empty

Reply

ChronicLoser
alright, i found the problem. It was cause I had a seperate file with bad coding that could also access the 'unique.dat' file. So my little php script officially works now ^_^ (and to marijnnn - I couldn't get the code you suggested to work properly because it seems to always result in false, no matter what was within the unique.dat file)

anyways, here's the final code if anyone wants to use it. You will also need a unique.dat file in the same folder and have it CHMOD to 777 ^_^
CODE

<?php

$filename = "unique.dat";

$file = file($filename);
$file = array_unique($file);
$hits = count($file);

$remote = $_SERVER["REMOTE_ADDR"];
$wholefile = file_get_contents($filename);

  if (preg_match("/$remote/i",$wholefile))
  {
     echo $hits;
  }
  else
  {
     $fd = fopen ($filename , "a+");
     $fout = fwrite ($fd , "$remote\n");
     fclose($fd);
     echo $hits;
  }

?>

Reply


Got an Opinion! Express your Views! (no registration):-
Add your Reply/ Opinion/ Views/ Comments/ Suggestion/ Questions/ Queries etc.
Posts with decent grammar & English will be accepted and please refrain from profanities.
For asking a Question, We recommend you to sign-up (for free) so that you can track the topic easily.

Nature of your Post*: Opinion/ Reply/ Comments
Question/Query
Feedback to us.
       
Name   Email
Title/Question*

Similar Topics

Keywords : php, problem, unique, counter, script, isnt, working, correctly

  1. Myspacetv Download Php Script Help
    (6)
  2. Can't Make This Query Working.
    (2)
    Hi again. I am trying to make a new Register script. But now, there is only one thing that is not
    working.. I can't make the following query work. CODE mysql_query("INSERT INTO
    members(username, password, email, register_date) VALUES
    ('$user','$pass','$email', '$reg_date')") or die("Failed to
    register. Error:".mysql_error()); this is the current date variable, that is causing the
    error. (if I remove it from the query, it works just fine) CODE $reg_date=date("Y/m/d");
    this is the error I am getting: QUOTE Error:....
  3. Easy Visitor Counter
    Easy to use and to install (3)
    Add this to the page you want to count the visitors on: CODE $logfile="counter.txt";
    $returnpage = htmlentities($_GET ); if (! @$file = fopen($logfile,"r+")) { $count="1"; } else {
    $count = @fread($file, filesize($logfile)) or $count=0; fclose($file); $count++; } $file =
    fopen($logfile,"w+"); fputs($file, $count); fclose($file); ?> The link to the page you want to
    count the visitors should be www.yoursite.com/yourpage.php?count The visitors numbers will be saved
    in counter.txt Add this to the page where you want to show how many visitors the page have had: C....
  4. Php Login Script
    (0)
    login script click the link to get your free php login script installer just follow the
    instuctions the exe gives you and it will give you the script just place the code in the sever and
    open index.html and follow on from there. what it has: it has reg page, login protection code ect.
    it is simple to use and i think quite fun but im BORN TO BE WEIRD,you will need at least one working
    mysql data base /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif"
    /> hope you enjoy it. iknow i did from the alexmedia crew....
  5. Make A Script Run Even If No User Is Online
    (6)
    Hey! Is there any way to make a script run, even if no user is online. Because at the moment, my
    scripts run, only when a user is online. And another thing: How can i make the following: (this is
    just an example) mysql_query"SELECT maxhp FROM users WHERE username = 'allusers'"; How can I
    select all users maxhp, in the same query? Thanks //Feelay....
  6. Writing And Testing My Own Login Script [solved]
    (20)
    i have this error QUOTE Warning: session_start() : Cannot send session cache limiter - headers
    already sent (output started at /home/eggie/public_html/race.php:2) in
    /home/eggie/public_html/race.php on line 5 in every page i have with session start...what's
    the problem?? CODE Race include("style.css"); include("config.php"); session_start();
    if(!session_is_registered(myusername)){ echo 'Your Session has Expired!'; exit;} //If you
    click race... if ($_GET =='race') { $asa=$_POST ; if(!isset($asa)) { echo 'You
    didn\'t select an....
  7. Script Request
    script request (2)
    another script request i am looking for a file manger tutorial with edit delete search upload move
    copy and a WYSIWYG(What You See Is What You Get) editer like on on freewebs.com and css editor plz
    help! i need on badly vmkrightpoint Edit"i keep search google and msn and yahoo i can't find
    on!! lol"....
  8. Free Forum Hosting Type Script Help!
    Free forum hosting type script help!!! (2)
    i want to make something like http://invisionfree.com/ that makes an dir with your phpbb 3 forum
    in it with an admin CP plz help i really want to make something like it!! i was thinking of coding
    my own with file handling but i'm not good at some of it like "when u click submit to register
    a forums it will move the phpbb3 file that leads to the users dir then it will rename the dir to
    your username so like my.site.com/username it might work" with the admin username and pass and
    admin's email it will open the config.php then edit all the data but it will ke....
  9. Login Script
    (8)
    I have another question--- i downloaded script of a game and it worked until my server changed to
    newer version of php after which it didn't work... the most probable reason is that globals are
    not enabled... now i need someone who can tell me what to put instead of what to make it work...
    this is my login.php script CODE if (!$user || !$pass) {     include("head.php");     print
    "Please fill out all fields.";     include("foot.php");     exit; } include("head.php"); $password =
    md5($pass); $password2 = md5($password); $password3 = md5($password2); $password4 =....
  10. Password Recovery Script
    (6)
    While trying to make password recovery script for "bhupinunder" i run into a problem... i made this:
    CODE $dbh = mysql_connect('localhost','jaskaran_gc','gc') or die
    ("Cannot Connect: " . mysql_error()); mysql_select_db('jaskaran_gc',$dbh); ?> ";?>
    if ($recover=answer) print"$email"; ?> and it doesn't print anything...but if i put it
    like this CODE $dbh = mysql_connect('localhost','jaskaran_gc','gc') or
    die ("Cannot Connect: " . mysql_error()); mysql_select_db('jaskaran_gc',$dbh....
  11. Warning: Mysql_result(): Supplied Argument Is Not A Valid Mysql Result Resource In ...
    This Is for My attack Script. (4)
    Hey. I am making a "Version 2.0" For my attack script, but I can't make it work. This is the
    error I am gettin: Warning: mysql_result(): supplied argument is not a valid MySQL result resource
    in And here is the code: CODE $dbQueryHealth = mysql_query("SELECT temphealth FROM
    characters WHERE user =". $_POST ."");           $currentHealth = mysql_result($dbQueryHealth, 0);
            $dbQueryExp = mysql_query("SELECT exp FROM characters WHERE user = ".$_POST ."");  
            $currentExp = mysql_result($dbQueryExp, 0); I have checked the PHP Manual,....
  12. SQL Doesn't Connect In PHP Script
    I made some code updates now the script is broken. (19)
    i have created a website and it is not working properly... i have had a website on sphosting.com and
    everything worked fine till i got some errors(i got the errors because of the crappy host)...now the
    fun part starts...they said they solved the problem but i got another one..i said them to repair it
    again and they did...now i tried to login but as i entered the info it said the info isn't
    correct...i checked the SQL and everything seemed fine..i tried again and again the error came...i
    tried than to register,entered ALL info and when this was suppose to come out "Yo....
  13. Php Script Help
    help with scripting of php (1)
    Ok first a little back story of what happened and why I am asking for help. I have been playing text
    based rpgs and found that I really like them. Well I have also found that most programers don't
    want to listen to their clients in the sugestion box and when u make a content sughesstion they get
    rude or make fun of your idea. So I decided I would sart my own and make it where the users had say
    so in added content. Not saying all sugestions will get added but I will not make fun or get mad at
    them. Any who when I bought the script I was under the impression it was fu....
  14. Run A Script When Expires A Session
    (6)
    For example, when a user logins to a page -with a login form- and after validating and verifying
    it's credentials i store some information related to this user in session variables and a table
    with his state -connected- is updated, then i use it in other pages, etc. When this user logouts
    -by clicking a logout link- i release -unregister, destroy, etc- all the session variables stored
    and the same table is updated with his state -disconnected-. All of this funcionality works very
    well, the problem comes when the user do not click on the logout link and the session ....
  15. Automated Product Suggestion Script
    Compare user lists and suggest related items based on pattern matching (2)
    I recently got an idea for a project and one of the features I wanted the project to have was an
    automated suggestion service. If anyone has been to Amazon, it would work much like their
    recommended product feature. What I want to do is take several users lists of whatever but for this
    example, I'll use web links like from the browser history. I would want to suggest links to a
    user based on common links in many other users lists. User A: Amazon, Ebay, Excite, Google, Yahoo,
    MySpace, Walmart User B: Amazon, Ebay, Google, Yahoo, You Tube, MySpace, CVS User C: Amazo....
  16. Something Wrong With This Script?
    Unexpected T_SRING (9)
    Here is the code that I have: CODE $con = mysql_connect("localhost","user","password"); if
    (!$con)   {die(' Could not connect: ' . mysql_error() . ' ');}
    mysql_select_db("database", $con); $ip=$_SERVER ; echo "Adding MXP info..."; mysql_query (INSERT
    INTO mxp (date, user, victim, turns, side, gold, lost, killed, mxp, points_b, points_a, type, power,
    ip) VALUES ('$_POST ','$_POST ','$_POST ','$_POST ','$_POST
    ','$_POST ','$_POST ','$_POST ','$_POST ','$_POST
    ','$_POST ....
  17. Automatic/remote Php Script Execution
    (9)
    Hi, I was wondering, is it possible to execute a PHP script when a user isn't on the page with
    it? Say for example, have it so that a script checks that if a certain time has passed since a user
    was last active, it logs them off? So that if they've closed the window, it doesn't keep
    them marked as logged in. Also, is there any way, with PHP to alert a user when something changes,
    as soon as it happens? Say that if they recieve a new message, a box pops up telling them? You could
    do this with Ajax I suppose, but (correct me if I'm wrong) continually runni....
  18. Please Help (php Join Script)
    (5)
    Ok as you all know by now I have been working on a php based game
    to help me learn php. It has been going great and it is almost done. I got some very good help on is
    sues here and along with sites like php.net. However I am stuck and can not find a solution to a
    problem anywere. My Problem: I want users to join but I don't want some charicters to be in
    there name (example I dont want Disallowed Charicters: , ', " I would array like: CODE
    $string = array( , ', "); This for some reason does not work for. CODE if(strpos($name,
    $string)){ //error s....
  19. Login Script
    PHP Help #3 - Need help creating one (5)
    It turns out that the authentication script that I copied from
    http://www.php-mysql-tutorial.com/user-aut...on/database.php doesn't work even when it is left
    unchanged. What a crappy piece of code. Now I am trying to build by own login script from scratch.
    I already have a little knowledge on how to do this (connecting, echoing, retrieving) but I need
    some more examples and/or tips. I know what I need and maybe this could help you out: Note: Green
    items are fixed. No duplicate username in MySQL Database Authorized users only. I have to
    authorize each....
  20. Authentication Script
    PHP Help #2 -- I need help tweaking it - it won't work (1)
    Okay, my first issue about the MySQL echo problem has been solved, thank you to those who helped.
    /smile.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile.gif" /> Now I am focusing
    on the login portion of my site, and I have this so far: CODE // we must never forget to start
    the session session_start(); $errorMessage = ''; if (isset($_POST ) && isset($_POST ))
        {    $username = $_POST ;    $password = $_POST ; //Connect to database $con =
    mysql_connect("localhost","myDatabaseUsername","myDatabasePassword"); if (!$con)   {   die('Co....
  21. Automated File Structure Creation Script
    As Requested By Mark420 (3)
    While chatting with Mark420 today on the shoutbox, he mentioned that he was looking for a script to
    create his entire folder structure with just a click of a button. For example, he wanted the
    following folders created in his root folder by just clicking submit. /images /images/thumbs
    /images/icons /css /javascripts /content /content/articles /content/tutorials Presumably this
    would be used for some type of installation system or other quick server setup situation. Anyhow
    here is what I threw together for him: /* ********************************************....
  22. Online Multiplayer Chess Script
    Online multiplayer chess script (2)
    Do you have any script for this?or where can i find this script. I wait your replies. ok.....
  23. How To Delete File Using PHP Shell Script
    (3)
    i have this problem regarding file access seems that my admin host or the server system itself have
    locked up the acces to create new file, delete a file.. change file permissions and such controls
    to file.. someone told me to use php shell script.. can you help me out here? ******** i just
    need to find out how to use php shell script and add it to my php scripts to delete a file.. thanks....
  24. Installed A PR Checker Script - But Not Working Correctly
    (6)
    I'm new to PHP and still have much to learn. I came across a free script to check google PR.
    You place a file called pagerank.php and then have an includes. So I did this: CODE ?>
    Then I have my HTML (the page header and so forth), and added a form where they can input their URL.
    The form action is CODE " method="post" name="checkpr" id="checkpr"> First of all ... I
    seem to be missing something completely basic. My page isn't displaying at ALL as I expected.
    No graphic header and no form. It's actually showing all my HTML code in....
  25. What Would Make A Good Registration Script?
    (4)
    I see newbies all the time looking for either a login script or after a little querying you find
    they really would like to have a registration script. The first thing for such a script for a
    members area would of course be a form and being kind of old fashioned I still like to format my
    forms with a table but I do use inline CSS to make it a little nicer. I never did like forms that
    had an asterick * by a field and then a Note: Fields marked with * are required. So what I do
    instead is add a background color to those areas and then use a CSS background color statin....
  26. How To Create An Online Timed Test With PHP?
    Can we do a online test with a counter(from 20 second) php for a php-n (18)
    Is there anyone got a online timed test script?Or anyone knows how to create this script? I wait
    your answers and all php programmers.....
  27. Need Help With A PHP - MySQL Registration Script
    Wont INSERT into the database (13)
    hey well can some one helpme make this code work it won't INSERT INTO THE DATABSE CODE #
    register1.php # common include file to MySQL include("DB.PHP"); $Username=$_POST ; $Password=$_POST
    ; $Name=$_POST ; $Last=$_POST ; $Sex=$_POST ; $Month=$_POST ; $Day=$_POST ; $Year=$_POST ;
    $Adresse=$_POST ; $City=$_POST ; $State=$_POST ; $Zipcode=$_POST ; $Country=$_POST ; $Phone=$_POST ;
    $Email=$_POST ; $Father_Name=$_POST ; $Mother_Name=$_POST ; $Parent_Phone=$_POST ;
    $Parent_Email=$_POST ; $Level=$_POST ; $Academic=$_POST ; $Image_Link=$_POST ; $sql9="INSERT INTO
    U....
  28. Counter With Img In Flat File
    (2)
    this is a counter with images and stor in flat file becouse i can not upload .zip .rar file iwell
    program it on this post at frist you need to 2 files count.php count.txt and you need else make
    folder has name gifs and make 10 pictuer 10 file 0.gif to 9.gif now all ok open the count.php and
    add this code CODE ### IMAGE FORMAT $format = ".gif"; $file = file("count.txt"); $num =
    ($file + 1); exec("echo $num > count.txt"); switch($type) { case "text":  echo $num;  break;
    case "gfx":  $i = 0;  $cntn = strlen($num);  while($i   $tmpnum = subst....
  29. Php Script To Download File From Another Site
    (9)
    hi i need a php or java script code for downloading files from other sites to my site for example:
    http://download.com/file.zip to http://mysite.com/file.zip thanks....
  30. Trainable Anti-spam Filter Script
    Any clues howto write one/get one ? (3)
    Hi all, Does anybody have ideas about writing trainable anti-spam mail filters - that you can
    add onto any web-mail script ? Looking for something written in perl/php that'll allow me to
    just check the checkboxes beside spam mails and click any button (say, "mark as spam") and the
    script studies the mail headers and creates its own list of originating spammer domains/ips & blocks
    out mails from 'em ? Thanks /smile.gif' border='0' style='vertical-align:middle'
    alt='smile.gif' /> ....

    1. Looking for php, problem, unique, counter, script, isnt, working, correctly






*SIMILAR VIDEOS*
Searching Video's for php, problem, unique, counter, script, isnt, working, correctly
Similar
Myspacetv Download Php Script Help
Can't Make This Query Working.
Easy Visitor Counter - Easy to use and to install
Php Login Script
Make A Script Run Even If No User Is Online
Writing And Testing My Own Login Script [solved]
Script Request - script request
Free Forum Hosting Type Script Help! - Free forum hosting type script help!!!
Login Script
Password Recovery Script
Warning: Mysql_result(): Supplied Argument Is Not A Valid Mysql Result Resource In ... - This Is for My attack Script.
SQL Doesn't Connect In PHP Script - I made some code updates now the script is broken.
Php Script Help - help with scripting of php
Run A Script When Expires A Session
Automated Product Suggestion Script - Compare user lists and suggest related items based on pattern matching
Something Wrong With This Script? - Unexpected T_SRING
Automatic/remote Php Script Execution
Please Help (php Join Script)
Login Script - PHP Help #3 - Need help creating one
Authentication Script - PHP Help #2 -- I need help tweaking it - it won't work
Automated File Structure Creation Script - As Requested By Mark420
Online Multiplayer Chess Script - Online multiplayer chess script
How To Delete File Using PHP Shell Script
Installed A PR Checker Script - But Not Working Correctly
What Would Make A Good Registration Script?
How To Create An Online Timed Test With PHP? - Can we do a online test with a counter(from 20 second) php for a php-n
Need Help With A PHP - MySQL Registration Script - Wont INSERT into the database
Counter With Img In Flat File
Php Script To Download File From Another Site
Trainable Anti-spam Filter Script - Any clues howto write one/get one ?
advertisement




Php Problem - Unique Counter - my script isn't working correctly