KUNISAN.JPブログ - 1629 / 1695 ページ

新規書き込み

PHPデカ - ホスト名、OS、ブラウザーを言い当てます

名前: 小川 邦久 リンク: http://kunisan.jp/ 日付: 2007年10月15日
「PHP」を学習し始めてから3日ほど経ちますが、データベース関連以外の関数は、ほぼ習得できました。「Perl」さえ知っていれば「PHP」への乗り換えも、そんなに難しくはなさそうです。今後はサーバーサイドスクリプトを作成する時には、できるだけ「PHP」で作ってみようと思います。

「PHP」自作プログラム第2弾は、「PHPデカ」です。あなたのホスト名、OS、ブラウザーを言い当てます。またまた大したプログラムではありませんが、こうしたミニプログラムの知識をいくつも集めていくと、後の大規模プログラム作成時の糧ともなってきます。

■■■■■■PHPデカ■■■■■■
<?php

//現在の日時を取得
$now = getdate();

//センテンス(1)
$mes .= "君はこのページに".$now[year]."年";
$mes .= $now[mon]."月";
$mes .= $now[mday]."日";
$mes .= $now[hours]."時";
$mes .= $now[minutes]."分";
$mes .= $now[seconds]."秒にアクセスしてきた。";
$mes .= "つまりこの時間のアリバイは作られたというわけだ。";

//IPアドレス取得
$ip = $_SERVER['REMOTE_ADDR'];

//ホスト名の取得
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);

//センテンス(2)
$mes .= "しかし、君のIPアドレスは".$ip."、つまりインターネットを".$hostname."経由で接続している。";

//ユーザーエージェント取得
$usera = $_SERVER['HTTP_USER_AGENT'];

//センテンス(3)
$mes .= "しかもパソコンのOSは";
$mes .= (ereg("Windows 98",$usera)?"Windows98":"");
$mes .= (ereg("Windows 98; Win 9x 4.90",$usera)?"WindowsMe":"");
$mes .= (ereg("Windows NT 5.0",$usera)?"Windows2000":"");
$mes .= (ereg("Windows NT 5.1",$usera)?"WindowsXP":"");
$mes .= (ereg("Windows NT 5.2",$usera)?"Windows2003":"");
$mes .= (ereg("Windows NT 6.0",$usera)?"WindowsVista":"");
$mes .= (ereg("Mac",$usera)?"Mac OS":"");
$mes .= (ereg("Linux",$usera)?"Linux":"");
$mes .= "で、";

//センテンス(4)
$mes .= "このホームページを";
$mes .= (ereg("MSIE",$usera)?"InternetExplorer":"");
$mes .= (ereg("Firefox",$usera)?"Firefox":"");
$mes .= (ereg("Opera",$usera)?"Opera":"");
$mes .= (ereg("Netscape",$usera)?"Netscape":"");
$mes .= (ereg("Safari",$usera)?"Safari":"");
$mes .= "で閲覧していることまでわかっているんだ!";

//センテンス(5)
$mes .= "ずばり君が犯人だろう!";

//文章表示
print $mes;

?>
■■■■■■■■■■■■■■■

懲りずに「PHP」ミニプログラム第3弾も作ってみようと思います。





PHP関連記事(リンク一覧): さくらレンタルサーバーのアクセス履歴をPHPで表示 / PHPで画像のアップロード(さくらレンタルサーバーのPHPでImageMagick) / PHP REVERSI(オセロもどき)の続き / PHP REVERSI(リバーシ) - オセロもどきゲームの公開 / PHP版-簡易アクセスブロック(IPアドレス、ホスト名、OS、ブラウザ名で制御) / ...(記事連続表示)