学校のインターネットにアクセスできなかったとき、ブログプログラムを変更し、オンラインカウントを追加しました。この前に、オンラインユーザーをカウントするいくつかのコードも読みました。彼らは私の要件を満たしていないと感じたので、ブログプログラムと組み合わせて自分自身を書き、それを私のブログに適用しました。
オンラインユーザーの数をカウントするためのいくつかの方法は、FDREAMのブログに記載されています。詳細については、こちらをご覧ください。
精度と効率のバランスをとるために、私はパッシブアプローチを使用してオンラインの人々を数えます。つまり、新しい訪問者がいるときにオンラインの人々の数を更新しました。誰かがこの方法をインターネットで使用したかどうかはわかりませんが、私は今、私が思う ^_ ^と正確にそれを使用しています。
セッションはL-Blogで使用され、訪問者が新しい訪問者であるかどうかを判断します。セッションのタイムアウト時間は通常20分です。これは、オンラインで人数の数を数えるために使用できます。つまり、20分以内にアクティブな訪問者はオンラインであると考えています。
アクセスレコードを記録するために、次のコードがcommon.aspがあります。
コードコピーは次のとおりです。
'guest_ipはゲストのIPです
ifsession( "guestip")<> guest_ipthen
dimguest_agent、guest_refer
'guest_agentおよびguest_referアクセスレコードを使用する必要があります
guest_agent = trim(request.servervariables( "http_user_agent"))
guest_refer = trim(request.servervariables( "http_referer"))
'アクセスレコードを追加します
conn.execute( "InsertIntoblog_counter(coun_ip、coun_agent、coun_refer)値
( '"&guest_ip&"'、 '"&guest_agent&"'、 '"&guest_refer&"')))
'1つの訪問を追加します
conn.execute( "updateblog_infosetblog_visitnums = blog_visitnums1")
sqlquerynums = sqlquerynums2
'セッションでゲストIPを保存します
セッション( "guestip")= guest_ip
endif
オンラインユーザー統計を実現するために、データベースにいくつかの変更を加えました。
1。1つのフィールドblog_onlinenums(integer)をテーブルblog_infoに追加して、ウェブサイトの現在のオンラインユーザーを保存しました。
2。テーブルblog_onineを追加すると、フィールドは次のように設定されています:ol_id(auto number)、ol_ip(character、20)、ol_time(日付/時刻、デフォルト値は今)。
変更されたサイト統計コードは次のとおりです。
コードコピーは次のとおりです。
'サイト統計コード
ifsession( "guestip")<> guest_ipthen
'元のサイトアクセスカウンター
conn.execute( "insertintoblog_counter(coun_ip、coun_agent、coun_refer)
VALUES( '"&guest_ip&"'、 '"&guest_agent&"'、 '"&guest_refer&"') ")
conn.execute( "updateblog_infosetblog_visitnums = blog_visitnums+1")
sqlquerynums = sqlquerynums+2
セッション( "guestip")= guest_ip
'オンライン数の人々
'訪問者がオンラインリストにタイムアウトしたかどうかを判断するだけです