タグ:Windows
アクセスカウンタの設置方法

お気づきの方もおられると思うが、実は、いままで使用させていただいたアクセスカウンタが11月から使えなくなってしまった。このサイトでは、右下のほうに、

 

あなたは?????人目のお客様です。

ご訪問ありがとうございます。

また、いらして下さいね。

 

と表示しているそれである。

 

どうも、使用していた無料サーバーのドメインが消滅してしまったらしい。なので、せっかくこのサイトを訪問していただいても、そこで、読み込みか゛止まってしまうという弊害が起こっていたようである。

 

これに気がついてから、しばらくは、表示なしで運用させてもらったものの、どうも気になってしかたがない。

 

そこで、ホームページでのアクセスカウンタの表示方法を調べてみることとした。といっても、なにしろ、プログラミングには不慣れであって、なかなか、これといったものはすぐに見つけることはできなかった。

 

ようやく、あるところで、表示のアルゴリズムを説明してあるのを見つけた。

 

それを採用したのが、現在のページでの表示となっている。

 

簡単に説明すると、まず、次のような counter.php というファイルを準備する。

 

<?php

# file open as read-write mode

$handle = fopen(“counter.txt”,”r+”);

# file lock

flock($handle,LOCK_EX);

# read 1 line of file

$counter = fgets($handle);

# count up

$counter = $counter +1;

# file pointer to head

fseek($handle,0);

# output to file

fwrite($handle,$counter);

# release file lock

flock($handle,LOCK_UN);

# file close

fclose($handle);

echo $counter;

?>

 

また、counter.txt というファイルにはカウンタの初期値となる数字を記入しておく。

 

本文のhtmlの部分に、

<script type=”text/javascript” src=”counter.php”>

<iframe src=”counter.txt” height=25 width=55 frameborder=0 ><⁄iframe>

というような記述を行なう。

 

これで、とりあえず、アクセスカウンタを表示することができた。

 

しかし、ここで、問題発生である。

 

私は、LinuxでブラウザにFirefoxを使用している。これだと、表示はちゃんとできた。携帯電話でも、ひとまず数字の表示はできた。しかし、WindowsのInternet Explorerでは、うまく表示ができていないことがしばらくしてわかったのだ。

 

原因は、どうもiframeというコマンドの使い方にあるらしい。使用するブラウザによって、表示されるエリアが異なるようなのである。

 

というわけで、ひとまず、今回の記事は終わりとする。いまのところ、うまい解決方法が見つからないのである。

 

(2011-12-28)

 

P.S.

 

もしも、良い方法があれば試してみたいとおもっています。
ご存じの方のコメントをお待ちしています。

 

 

私も使用していますが、PHPについては以下がとても参考になります。

 

学生のためのPHP言語 ─基礎からウェブシステムまで

つくって覚えるPHP入門

 

私の「PC体験記」は、こちらでご紹介しています。
↓↓↓

Footprint Annex — PC体験記 —

 

ZIPファイル解凍時の「文字化け」と対処法 (Linuxにて)

PCでいろんな作業をしていると、「文字化け」という現象に出くわす時がたまにある。これは、日本語の入力システムの多様さに由来している。

 

まだ、いまのように、Windowsがなかった時代、MS-DOSというオペレーティングシステムが全盛だったころ、日本語の文字入力は、マイクロソフトのDOSでは、shift-JIS、NECのPC9801系列ではJIS、UnixではEUCというまったく別な文字コードが使われていた。

 

また、デリミタ(Delimiter)とよばれた区切りコードも、キャリッジリターン[CR] 、ラインフィード[LF]、あるいは、キャリッジリターン+ラインフィード[CR+LF]というように、何種類かあった。実は、これらの間を互いに変換してくれるフリーソフトウェアも存在した。私もよく利用させていただいた記憶がある。

 

Windowsが全盛となった現在、これらのことはほとんど意識しなくても済むようになった。なぜならば、システムが自動的に変換してくれて、これらの違いを吸収してくれるからである。

 

私のように、Linuxを使っていても、このあたりは、あまり意識していない。ただ、「文字化け」は時々起こる。特に、Windowsで作成したファイルがWindowsで圧縮された場合、このZIPファイルをLinuxで解凍しようとすると、文字化けとなる。この問題は、長い間、悩みの種であった。(私の場合は、Dual BootのPCを使っているので、いったんWindowsを起動し、解凍した後に、Linuxを起動して読み込む、といった操作をしていた。)

 

だが、昨年、ひとつのスクリプトを見つけた。このスクリプトは、たったひとつの点をのぞいてすばらしいものであった。一年ほど使ってみて、使い慣れたものなので、ここに紹介させていただこうとおもう。(*)

 

========== (ここから) ==========

#!/usr/bin/perl

use Archive::Zip;

use Encode;

 

my $zip = Archive::Zip->new($ARGV[0]) or die;

for ($zip->members) {

$zip->extractMember($_, encode(‘UTF-8’, decode(‘CP932’, $_->fileName)));

}

========== (ここまで) ==========

 

この部分を例えば、「xunzip.pl」などのファイル名で保存し、

 

chmod 755 xunzip.pl

 

などで、
実行可能にしておく。そして、

 

./xunzip.pl sample.zip

 

のように使用する。

 

これは、Perl(パール)スクリプトとよばれるもので、perl-Archive-Zipというパッケージが必要となる。あらかじめ、インストールしておく。

 

私には、理解不足の点もあるが、Windowsで使用されているCP932という文字コードを、Linuxで使用されているUTF-8に変換するものである。とても便利なスクリプトなのである。

 

ただ、ひとつ、欠点は、パスワードがZIPファイルにかけられていると、使えないということ。なにか、やりかたはあるのだろうが、いまのところ、不明のままにしておいてある。

 

(2011-8-15)

 

 

(*) Nikkei Linux雑誌2010年9月号のp.50にサンプルとして掲載されていたものを引用させていただきました。

 

 

使っていますか? 2GBまで無料の「Dropbox」

 

 

あなたのお持ちの独自ドメイン、全て利用できます!

PCのダウンと復旧の顛末

いま自宅でメインに使用しているPCがダウンしてしまった。Windows側は立ち上がるのだが、Linux側がまったく立ち上がらない。

 

いままでは、Windows(XP)とlinux(TurboLinux Fuji)を住み分けして使っていた。私は、Linuxの初心者であって、あまり詳しいほうではない。それでも、インターネット、メール、文書作成など、大抵のことはLinuxでできるようになったが、どうしてもWindowsでないとできないものがあるので、デュアルブートの状態にしていた。

 

使っているPCはメインメモリが320MBで、およそ100GBのハードディスクを分割して、使っている。その構成は、WindowsXP(FAT32)、Linux(Boot)(ext3)、Linux(root)(ext3)、LinuxSwap、Data(FAT32)としている。また、起動時のエントリーは、MBM (Multi Boot Manager)を使用させてもらっている。

 

先日、ある時、突然に、LinuxのBootができなくなってしまった。MBMでは「Invalid」という表示でエラーになった。また、Windows側からLinuxのシステムを監視できるソフト「ext2fs」を使って見てみると、Linux(Boot)のセクションにあるべきファイルがすべて消えていることが判明した。

 

幸いなことに、データは別のパーティションにバックアップしてあったので、事なきを得たが、やっかいなことに遭遇したものだとおもったのである。

 

実は、たしか以前にもこんな現象があった。そのときは同じLinuxのDistributionを最初からインストールしなおしたという記憶があった。

 

それで、今回も、同様に行おうとおもったのだが、この際、別のLinuxを入れてみるのもいいかなとおもい、いろいろと試してみることにしたのであった。

 

まず、TurboLinux Client 2008 である。

 

インストール自体はうまくでき、無線LANの設定もOKであった。問題は、大きく2点。

 

ひとつは、マウントされるWindows領域の漢字名のファイルが文字化けしてしまうこと。いろいろ試したが、どうにも直らない。

 

もうひとつは、音楽関連のソフト「mplayer」がデフォルトでは動作しない。yumのシステムでインストールは一応されるようなのだが、動作させるとエラーになってしまう。そこで直接、ファイルをダウンロードし、自分でコンパイルして一応は動作させることができた。ただ、この場合も、画面の大きさの制御ができないという欠点がでてきた。

 

次に試したのが、Fedora 11である。

 

この場合は、システムのインストールと無線LANの設定は問題なくできた。

 

だが、「mplayer」が、しかし、うまく動作しない。これもyumのインストールでできたのだが、今度は、画面は問題ないものの、音のとびが発生してしまった。どうも画面と音がずれているようだ。その他の問題はなかったのだが、「mplayer」で音楽が聞けないことは、やはり問題であって、いまひとつ使うことにためらいを覚えてしまった。

 

これらの原因はおそらく、PCに搭載されているメモリにあるのだろう。なにしろ、320MBのメインメモリなので、最近のディストリビューションでは、PC側の負担が大きすぎているのだろうとおもっている。

 

なので、結論としては、やはり、いままで使用できていたTurbolinux Fujiを入れ直すということにしたのだ。そして、ほぼ一日をかけて、復旧させた。

 

メモリの少ないPCでは、最近のデストリビューションを扱うには無理があったようだ。

 

でも、本当になんとかできないのだろうか。もう少し、解決策を探ってみようかとも考えている。

 

(2009-8-17)