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 tag create a highlighted bolded text?
<q> <strong> <em>
<p>Address: <strong>http://CoursesWeb.net/</strong> - Tutorials.</p>
Which of these CSS codes displays the text bolded?
text-size: 18px; font-style: italic; font-weight: 800;
#id {
  font-weight: 800;
}
What JavaScript function can be used to call another function multiple times, to a specified time interval?
setInterval() setTimeout() push()
function someFunction() { alert("CoursesWeb.net"); }
setInterval("someFunction()", 2000);
Click on the correctly defined variable in PHP.
var vname = 8; $vname = 8; $vname == 8;
$vname = 8;
echo $vname;
Counter Page Visits

Last accessed pages

  1. Add data from form in text file in JSON format (7996)
  2. Bubbles3 (35402)
  3. Drag and Drop with HTML5 attributes (3022)
  4. Get the value of the selected /checked checkboxes in a form (25459)
  5. Butterfly Kyodai (25368)

Popular pages this month

  1. Bubbles3 (3680)
  2. Butterfly Kyodai (3288)
  3. Zuma Deluxe (2408)
  4. Qwop (1694)
  5. Backgammon (1412)