PHP基于cookie與session統(tǒng)計網(wǎng)站訪問量并輸出顯示的方法
本文實例講述了PHP基于cookie與session統(tǒng)計網(wǎng)站訪問量并輸出顯示的方法。分享給大家供大家參考,具體如下:
<?php $f_open = fopen("count.txt","r+"); //打開指定的文件 $count = fgets($f_open); //讀取文件中的數(shù)據(jù) if(empty($_COOKIE['cookie_name'])){ //判斷COOKIE的是否存在 setcookie("cookie_name",value,time()+1800); //如果不存在,則創(chuàng)建COOKIE $count = $count + 1; //將變量$count的值加1 rewind($f_open); //打開指定的文件 fwrite($f_open,$count); //向文件中寫入新的數(shù)據(jù) fclose($f_open); //關(guān)閉文件 } ?>
<?php session_start(); include("conn/conn.php"); $data1=date("Y-m-d"); //獲取當前訪問時間 $data2=substr(date("Y-m-d"),0,7); $ip=getenv('REMOTE_ADDR'); if($_SESSION[temp]=="" || $_SESSION[temp]==NULL){ //判斷$_SESSION[temp]==""的值是否為空,其中的temp為自定義的變量 //使用數(shù)據(jù)庫存儲數(shù)據(jù) $select=mysql_query("select * from tb_count10 where data1='$data1' and ip='$ip'"); if(mysql_num_rows($select)>0){ $query1="update tb_count10 set counts=counts+1 where data1='$data1' and ip='$ip'"; $result1=mysql_query($query1); }else{ $query="insert into tb_count10(counts,data1,data2,ip)values('1','$data1','$data2','$ip')"; $result=mysql_query($query); } $_SESSION[temp]=1; //登錄以后,$_SESSION[temp]的值不為空,給$_SESSION[temp]賦一個值1 } ?>
<?php //以圖形的形式輸出數(shù)據(jù)庫中的記錄數(shù) $query="select sum(counts) as counts from tb_count04 ";//查詢數(shù)據(jù)庫中總的訪問量 $result=mysql_query($query); $visitor=mysql_result($result,0,'counts'); echo "----------"; echo "<strong>網(wǎng)站的訪問量: </strong>"; //以圖形的方式顯示訪問次數(shù) //對補位數(shù)字0的處理 $len=strlen($visitor); //獲取字符串的長度 $str=str_repeat("0",6-$len); //獲取6-$len個數(shù)字0 for($i=0;$i<strlen($str);$i++){ //獲取變量$str的字符串長度 $result=$str[$i]; $result='<img src=images/0.gif>'; echo $result; //循環(huán)輸出$result的結(jié)果 } //對數(shù)據(jù)庫中數(shù)據(jù)的處理 for($i=0;$i<strlen($visitor);$i++){ //獲取字符串的長度 $result=$visitor[$i]; switch($result){ //如果值為"0",則輸出0.gif圖片 case "0"; $ret[$i]="0.gif";break; case "1"; $ret[$i]="1.gif";break; case "2"; $ret[$i]="2.gif";break; case "3"; $ret[$i]="3.gif";break; case "4"; $ret[$i]="4.gif";break; case "5"; $ret[$i]="5.gif";break; case "6"; $ret[$i]="6.gif";break; case "7"; $ret[$i]="7.gif";break; case "8"; $ret[$i]="8.gif";break; case "9"; $ret[$i]="9.gif";break; } echo "<img src=images/".$ret[$i].".>"; //輸出訪問次數(shù) } ?>
更多關(guān)于PHP操作cookie與session相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP中cookie用法總結(jié)》及《PHP中session問題總結(jié)》
希望本文所述對大家PHP程序設(shè)計有所幫助。
- PHP入門教程之會話控制技巧(cookie與session)
- PHP會話控制:Session與Cookie詳解
- PHP5中Cookie與 Session使用詳解
- php中如何同時使用session和cookie來保存用戶登錄信息
- php session和cookie使用說明
- php設(shè)置session值和cookies的學習示例
- 深入理解PHP中的Session和Cookie
- 詳解PHP中cookie和session的區(qū)別及cookie和session用法小結(jié)
- PHP中cookie和session的區(qū)別實例分析
- php禁用cookie后session設(shè)置方法分析
- 解析PHP的Yii框架中cookie和session功能的相關(guān)操作
- PHP cookie與session會話基本用法實例分析
相關(guān)文章
如何獲知PHP程序占用多少內(nèi)存(memory_get_usage)
想要知道編寫的 PHP 腳本需要占用多少內(nèi)存么?很簡單,直接使用 PHP 查看當前分配給 PHP 腳本的內(nèi)存的函數(shù) memory_get_usage() 就可以了2012-09-09php cURL和Rolling cURL并發(fā)方式比較
在實際項目或者自己編寫小工具(比如新聞聚合,商品價格監(jiān)控,比價)的過程中, 通常需要從第3方網(wǎng)站或者API接口獲取數(shù)據(jù), 在需要處理1個URL隊列時, 為了提高性能, 可以采用cURL提供的curl_multi_*族函數(shù)實現(xiàn)簡單的并發(fā)。2013-10-10PHP通過內(nèi)置函數(shù)memory_get_usage()獲取內(nèi)存使用情況
這篇文章主要介紹了PHP通過內(nèi)置函數(shù)memory_get_usage()獲取內(nèi)存使用情況,需要的朋友可以參考下2014-11-11php調(diào)用淘寶開放API實現(xiàn)根據(jù)賣家昵稱獲取賣家店鋪ID的方法
這篇文章主要介紹了php調(diào)用淘寶開放API實現(xiàn)根據(jù)賣家昵稱獲取賣家店鋪ID的方法,實例分析了php調(diào)用淘寶API查詢店鋪信息的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07PHP與javascript實現(xiàn)變量交互的示例代碼
以下是對PHP和javascript實現(xiàn)變量交互的一個實例進行了詳細的介紹。需要的朋友可以過來參考下2013-07-07