The counterUrl() function presented in this page can be used to make a counter for the number of visits of your web site pages, with data (URL of each accessed page, number of visits) stored into a text file on server, in JSON format.
- The function returns an array with: ['p'=>page_address, 'v'=>nr_visits]. For other details and usage, see the comments in code.
- Click to select it.
/* PHP Script Counter Page Visits (PHP 5.4+) /from: http://coursesweb.net/
- Counter data is saved in JSON format into a text file on server
- Create a file on your server with the name added in $file_json, and permissions CHMOD 0755 (or 0777)
*/

// HERE add the path and Name of the file where to save the counter data
$file_json = 'count_url.json';

//function to get and save a Counter for accessed pages
//receives the page address, and the address of the file where to save data (in json format)
//returns array with: ['p':page_address, 'v':nr_visits]
function counterUrl($p, $f){
  $url_c = ['p'=>$p, 'v'=>0];  //counter of current accessed page

  //if $file_json exists, gets is data into an array
  $ar_c = file_exists($f) ? json_decode(file_get_contents($f), true) :[];

  //if array $ar_c, traverse it, checks if current $pg_url is saved and increments its counter
  if(is_array($ar_c)){
    $nr = count($ar_c);
    for($i=0; $i<$nr; $i++){
      if($ar_c[$i]['p'] == $url_c['p']) {
        //store counter of current url, remove this item from array
        $url_c['v'] = $ar_c[$i]['v'];
        unset($ar_c[$i]);
        $ar_c = array_values($ar_c);
        break;
      }
    }
  }

  //increment counter and save data in json file (show error message if unable to save)
  $url_c['v']++;
  $ar_c[] = $url_c;
  if(!file_put_contents($f, json_encode($ar_c))) echo 'Unable to save data in: '. $f;
  return $url_c;
}

//Usage of the function, output the current page-address (without domain name) and number of visits
$url_c = counterUrl($_SERVER['REQUEST_URI'], $file_json);
echo 'Page: '. $url_c['p'] .' - Visits: '. $url_c['v'];
// Output: Page: /php-mysql/counter-page-visits_cs - Visits: 89

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
Which meta tag provides a short description of the page?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 characters that describes the content of the page" />
Which CSS property is used to stop the wrapping effect of the "float"?
clear text-align position
#some_id {
  clear: both;
}
Click on the method which gets an array with all the elements in the document that have a specified tag name.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
alert(nr_divs);
Indicate the PHP function which returns the number of elements in array.
is_[) count() strlen()
$arr =[7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
Counter Page Visits

Last accessed pages

  1. Mahjong Gardens (7480)
  2. Simple Laravel MySQL CRUD Example (89)
  3. $_GET, $_POST and $_REQUEST Variables (24327)
  4. Simple Admin Login PHP Script (587)
  5. PuzzleImg - Script to Create Image Puzzle Game (1805)

Popular pages this month

  1. Qwop (5845)
  2. Drag Racer V3 (2771)
  3. Flash Games - Free online Games (1439)
  4. Courses Web: PHP-MySQL JavaScript Ajax HTML CSS Flash-AS3 (1246)
  5. Bubbles3 (1115)