2008/10/28 火曜日

空想生活

Filed under: 未分類 — admin @ 22:08:26

少し前に同じバイトをやってた友達が今こんなことをやっています、ということでちょっと書いてみます。

 http://www.cuusoo.com/studio/user/019344/0001/

大学のゼミらしいです。

「あったらいいなぁ」という商品を提案し、試作品を作ったりしてるみたいです。

投票数が多い場合は、商品化も検討されるみたいです。

ってことで、興味のある人は見ていってください。

2008/10/25 土曜日

MySQL用クラスファイル(PHP)

Filed under: プログラミング — admin @ 0:14:19

PHPでのMySQLデータベースへの接続用関数を作ってみました。

工夫点としては、get_magic_quotes_gpc()関数を使って、MAGIC QUOTES GPCの設定を確認し、オフであれば、addslasshesを行いSQL文のサニタイズを行っている点でしょうか?

まだ、トランザクション処理などを加えてないので、今後付け加えたときにはまたアップしなおします。

mysql.php

  1. <?php
  2.     /* ********************************************
  3.      *  MySQL への接続関連のクラスファイル
  4.      * ******************************************** */
  5.     class MysqlDB {
  6.         var     $DBuser;
  7.         var     $DBpass;
  8.         var     $DBname;
  9.         var     $DBhost;
  10.         var     $DB;
  11.         var     $charset;
  12.         // デフォルトコンストラクタ
  13.         function MysqlDB( $charset = “utf-8″ ) {
  14.             $this->charset = $charset;
  15.         }
  16.         // データベース情報をセットする。
  17.         function Set( $user, $pass, $name, $host=”localhost” ) {
  18.             $this->DBuser = $user;
  19.             $this->DBpass = $pass;
  20.             $this->DBhost = $host;
  21.             $this->DBname = $name;
  22.         }
  23.         // MySQL データベースに接続する
  24.         function Connect() {
  25.             $this->DB = mysql_connect( $this->DBhost,
  26.                                     $this->DBuser, $this->DBpass );
  27.             if( $this->DB == false ) {
  28.                 echo “Connect Error\n”;
  29.             } else {
  30.                 mysql_query( “set ames ujis” );
  31.                 mysql_select_db( $this->DBname );
  32.                 echo “Connect OK\n”;
  33.             }
  34.         }
  35.         // MySQL データベースから切断する
  36.         function Disconnect() {
  37.             mysql_close( $this->DB );
  38.         }
  39.         // MySQL クエリを実行する
  40.         function Query( $q ) {
  41.             if( $this->DB == false ) {
  42.                 echo “Connect Error\n”;
  43.             }
  44.             // MAGIC QUOTES GPCがオフであれば、ここでSQLクエリをサニタイズ
  45.             if( !get_magic_quotes_gpc() ) {
  46.                 $q = addslashes( $q );
  47.             }
  48.             $res = mysql_query( $q );
  49.             // クエリ結果をfetch assocしてリターン
  50.             $k=0;
  51.             while( $data[] = mysql_fetch_assoc( $res ) ) {
  52.                 foreach( $data[$k] as $key => $value ) {
  53.                     $d[$k][$key] = mb_convert_encoding( $value, $this->charset, “auto” );
  54.                 }
  55.                 $k++;
  56.             }
  57.             return $d;
  58.         }
  59.     }
  60.     /*
  61.     $db = new MysqlDB();
  62.     //$db->Set( “DBuser”, “DBpass”, “DBname”, “DBhost” );   // DBホストを省略しない表記
  63.     $db->Set( “DBuser”, “DBpass”, “DBname” );
  64.     $db->Connect();
  65.     $db->Disconnect();
  66.     */
  67. ?>

2008/10/19 日曜日

情報セキュアド終了

Filed under: 資格試験 — admin @ 20:46:01

解答例が公開されている午前の間違った問題を書いていきます。

問2 略

問3:M/M/1の待ち行列モデルにおいて、窓口の利用率が50%のとき、平均待ち時間Wと平均サービス時間Tの比W/Tは幾らか。

解き方:保留

問7:モジュール分割の良否を、モジュール結合度の視点から評価する場合、もっとも適切な記述は?

解答:呼び出す側と呼び出される側のモジュール間のデータの受け渡しは、引数としてデータ項目を列挙するのが望ましい。

問13:ソフトウェアの保守作業に関する記述

解答:影響範囲の調査を効率よく行うためには、リポジトリなどのツールを使用する。

問14:コンピュータとスイッチングハブ、又は2台のスイッチングハブの間を接続する複数の物理回線を一本の回線に束ねる技術は「リンクアグリゲーション

問16:TCPヘッダに含まれる情報は、「あて先ポート番号

問19:SSLに関する記述。

解答:通信内容を暗号化する機能と、通信相手を認証する機能を持つ。

問32:無線LANのセキュリティ技術

解答:無線LANのアクセスポイントが、1台のRADIUSサーバと連携してユーザ認証を行うことができる。

問38:情報セキュリティの評価基準JIS X 5070(ISO/IEC 15408)の説明

解答:IT製品及びシステムのセキュリティ機能にかかわる部分の評価基準

問39:JIS Q 27001:2006のリスクマネジメントで採用されているセーフガードは?

解答:リスクを低減する実践、手順、またはメカニズム

問49:申請や届出などの行政手続をインターネットで実現させる電子申請の特徴は?

解答:本人確認のため、電子署名や電子証明書を使用することができる。

問51:「システム管理基準」に従えば、データ管理のポイントとなるものは?

解答:適切なアクセスコントロールを行っていること。

以上、ということで、おそらく点数は43/55なんで、午前は安心です。

問題は残りの午後。。。

PHP Class データ構造:Queue

Filed under: プログラミング — admin @ 0:09:13
  1. <?php
  2.     class Queue{
  3.         var $num = 0;           // キューの有効要素数
  4.         var $arg=array();       // キューの配列

  5.         //コンストラクタ
  6.         function Queue(){
  7.             $this->num=0;
  8.         }
  9.         function pop(){
  10.             if( $this->num != 0 ) {
  11.                 $this->num = $this->num - 1;
  12.                 $tmp = $this->arg[$this->num];
  13.                 return $tmp;
  14.             }
  15.         }
  16.         function push( $x ) {
  17.             $this->arg[$this->num] = $x;
  18.             $this->num++;
  19.         }
  20.         //デストラクタ
  21.         function destroy(){
  22.             unset($this);
  23.         }
  24.     }
  25.     // +—————————————-+
  26.     // | キュークラスのサンプルデータ
  27.     // +—————————————-+
  28.     /*
  29.     $c=new Queue();
  30.     $c->push(4);
  31.     $c->push(3);
  32.     $c->push(5);
  33.     $c->push(7);
  34.     print $c->pop().”\n”;
  35.     print $c->pop().”\n”;
  36.     print $c->pop().”\n”;
  37.     print $c->pop().”\n”;
  38.     $c->push(3);
  39.     print $c->pop().”\n”;
  40.     print $c->pop().”\n”;
  41.     */
  42. ?>

とりあえず、データ構造として、重要なキュー(Queue)クラスを作ってみました。

サンプルもついてるんで、使い方もスグに解るかと思います。

(ダウンロード用URL: http://yama3.my-sv.net/php_script/download/queue.txt

上のURLを右クリックして 「名前をつけてリンク先を保存」w

ダウンロード後は、ファイル名をqueue.phpなどのようにPHPファイルに変更してください。

2008/10/18 土曜日

bashプログラミング

Filed under: 未分類 — admin @ 15:10:42

ちょっとまえからbashでのプログラミングを少しだけかじっています。

普段、LinuxでTeXファイルを扱うことが多いんで、TeXのコンパイル時などに発生する**.auxファイルや**.logファイルを 削除するbashプログラムを作成しました。

以下、ソースコード

ファイル名: /home/username/bin/texrm

  1.  #!/bin/sh
  2. rm *.aux
  3. rm *.log
  4. rm *~

こんなかんじのすごく短いプログラムです(笑)

**.auxや**.logだけでなく、vimで作成したときにできるバックアップファイル(?)の**~も削除しちゃいました。

んで、こいつを放り込んだフォルダに対し、パスを通す。

/home/username/.bash_profile

の一番したに、

export PATH=$PATH:/home/username/bin

と追加して、ターミナルを再起動?とかして.bash_profileを読み込みなおす。

とりあえず、これでtexrmが使えるようになりました。

vimrcの公開

Filed under: 未分類 — admin @ 15:03:32

今使ってるvimrcを公開してみます。

っていっても、大した設定はしていません。。。org

なんかオススメの設定があったら教えてください。

  •  ” —– 色の設定 —– “
  • syntax on
  • colorscheme evening
  • ” —– タブ幅 —– “
  • set ts=4 sw=4
  • set softtabstop=4
  • set expandtab
  • ” —– 検索 —– “
  • set ignorecase
  • set smartcase
  • set incsearch
  • ” —– other —– “
  • set autowrite
  • set showmatch
  • set number

ほんと短いvimrcですね。。。

2008/10/16 木曜日

ウェブサイト収集ツール作成中

Filed under: 未分類 — admin @ 11:01:11

現在、PHPにてWeb上のウェブサイトを収集するプログラムを書いています。

流れとしては、

  • 開始点となるサイトを一つ指定する
  • HTMLパーサーを用いて、aタグを全てQueueに格納
  • Queueから一つpopして、そのサイトをHTMLパーサーを用いて、aタグを全てQueueに格納

以下、同様に繰り返す。

使用してるサーバー機は、メモリ192MBなんですが、PHPのlimit_memoryを180MBに設定し、ほぼフルパワーで実行してます。

約10分間で新しいウェブサイトを400件くらい見つけてくれてます。

ただ、10分後には、メモリ不足でプログラムがストップします(笑)

ってことで、こいつをこれからもっと改良してみます。

2008/10/11 土曜日

電話番号無料貸し出しサービス

Filed under: Webサイト — admin @ 22:51:08

http://your-phone-number.net/index.html

なかなか画期的なサービスなんでエントリーします。

使い捨てのできる電話番号のサービスです。

電話はSkypeにかかってくるので、これを使うにはSkypeへの登録が必要。

SkypeIDを入力して、番号取得ボタンを押せば、Skyepe宛にyour_phone_numberから電話+メッセージが着信。

このメッセージに書かれた電話番号がこの無料で貸し出された電話番号。

あとは、この番号へ10分以内に電話すればOK。

10分後には電話番号は消滅。

なかなか便利そうです。

2008/10/1 水曜日

Googleロゴマーク

Filed under: Google — admin @ 23:32:07

4月23日ロゴマーク集

5月16日 8月10日 8月13日
8月14日 8月15日 8月23日
8月8日 9月27日 4月22日
9月15日 6月6日 9月11日
5月5日

今、わたしが持っているGoogleロゴの一覧です。

なかなか個性的なロゴがたくさん。

他のGoogleロゴを 持っている人いたら教えてくださいww

2008/9/27 土曜日

Synergy【マウス・キーボード共有ソフト】

Filed under: PCソフト, PC総合 — admin @ 8:33:16

ちょっと前から自分の家のPCをデュアルディスプレイにしようと思っていたのですが、メインがデスクトップ・サブがノートPCなので、うまくデュアルディスプレイにする方法が見つからずあきらめてました。

しかし、
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/830usesynergy.html

を見て、初めて知った。

デュアルディスプレイより、こっちのほうがいいじゃん!って感じです。

これなら、メインPCではWindowsを開いて、サブPCではLinuxを開いて、しかもそれらがデュアルディスプレイみたいに繋がっている。

ってことで即導入しました。

即っていっても、うまく動かなかったりで半日くらいかかったんですが。。。

基本的なインストールは、上のサイトhttp://www.atmarkit.co.jp/flinux/rensai/linuxtips/830usesynergy.htmlを見て、行いました。

ただ、上の記事だと、Testボタンを押したときから2つのPCが繋がると書かれていたが、つながりませんでした。

ただ、エラーメッセージの出ない状態ならば、そのままStartボタンを押せば大丈夫みたいです。ここに、躓いてしまい時間がかかってしまいました。

ってことで、デュアルディスプレイじゃなくて、デュアルパソコンになるんですかね?

2つ以上のPCでしかも違うOS(Mac+WinやWin+Linux、Mac+Linuxなど)を使っている場合、このデュアルパソコン?が便利ですよー。

次のページ »

HTML convert time: 0.659 sec. Powered by WordPress ME