31
3月

楽天ジャンル検索で動的にセレクトボックス生成

JavaScriptでセレクトボックスの連動をもとにアマゾンと楽天のカテゴリが連動するセレクトボックスを作ります。アマゾンは静的にしかセレクトボックスのオプションアイテムを渡せませんが、楽天ウェブサービス(Rakuten Web Service)では楽天ジャンル検索APIというのがあって楽天にリクエストを渡せば現在のジャンルを返してくれます。活用すればジャンル名やジャンルコードの変更が生じてもメンテナンスフリーな画面が作れます。

レスポンスはXML形式とJSON形式を選べますがJavaScriptでセレクトボックスの連動をもとにするのでJavaScriptと相性のいいJSON形式にします。JSONのデータを見る場合はブラウザのURL欄に以下のURLを入力してアクセスします。ブラウザの画面にサーバから返されたデータが表示されます。[YOUR_developerID]のところはご自分で取得した楽天デベロッパーIDが入ります。

http://api.rakuten.co.jp/rws/2.0/json?developerId=[YOUR_developerID]&operation=GenreSearch&version=2007-04-11&genreId=0

続きを読む…


タグ

, , , , , ,

関連する投稿

30
3月

CakePHPのfolder.phpでディレクトリ操作

PHPでディレクトリを作成する場合、一行若しくは存在しないファイルを作成すればコードを書かなくても実現できますが、ディレクトリ削除はディレクトリ内にファイルが存在する場合、以下のようにファイルを一旦すべて削除してからディレクトリを削除する流れになります。

function remove_directory($dir) {
  if ($handle = opendir("$dir")) {
   while (false !== ($item = readdir($handle))) {
     if ($item != "." && $item != "..") {
       if (is_dir("$dir/$item")) {
         remove_directory("$dir/$item");
       } else {
         unlink("$dir/$item");
         echo "removing $dir/$item";
       }
     }
   }
   closedir($handle);
   rmdir($dir);
   echo "removing $dir";
  }
}

remove_directory("/path/to/dir");

余談ですが、たまに「system(“rm -Rf /path/to/dir“);でいいじゃん」なんて言う人がいますが、こんな環境ド依存コードでいいじゃんと言える神経がちょっとわかりません。
続きを読む…


タグ

, ,

関連する投稿

29
3月

WindowsのバッチファイルでFTPクライアントを実行

WindowsのバッチファイルでFTPクライアントを実行してFTPサーバからファイルを落とすサンプルです。バッチファイル自体にFTPコマンドは書けませんのでコマンドを記述したファイルをバッチファイルに食わせます。コマンドファイルは以下のようになります。

ftpcmd.txt

open example.com
user administrator admin

cd /sysimage/20090328
lcd c:¥sysimage¥20090328
mget 20090328/*

quit

続きを読む…


タグ

, , ,

関連する投稿

28
3月

Asteriskの音声を日本語化

※2009年3月28日現在、ftp.voip-info.jpからAsterisk1.4.24のpatchはまだ提供されていないようです。日本語化が必要な場合は1.4.23.1以下のバージョンをご利用ください。

Asteriskの音声を日本語化します。Asteriskの音声を日本語化するにはパッチを当てる必要があります。基本的にはAsteriskのソースにパッチを当てて再コンパイルすればOKです。パッチを当てる具体的な手順は以下のようなやり方になります。なお設定ファイルが初期化されてしまうのでmake configは実行しないでください。

# cd asterisk-1.4.23.1
# wget ftp://ftp.voip-info.jp/asterisk/patch/scripts/ja_autopatch.sh
# sh -x ./ja_autopatch.sh
# ./configure
# make
# make install
# cd

続きを読む…


タグ

, , , ,

関連する投稿

27
3月

AsteriskとISDN回線で外線接続

電話やFAXというツールは言わずと知れたレガシーツールでビジネスの生命線であるため、ひかり電話の不具合などVoIPに対する信頼の低さから経営者は公衆電話網からの完全移行には慎重です。良くて「IP電話網も取り入れるが公衆電話網も維持する」といったところでしょう。

インターネット回線は光だけど現在でも電話・FAXはISDN回線で運用しているという企業は意外と多いと思います。今回はISDN回線をLANにつなぎ、外線にAsteriskをregisterして外線発着信する設定を行います。ISDN回線をLANにつなぐゲートウェイにはICOMのVE-IG1を使用します。

VE-IG1にはDHCPクライアント機能がなく固定IPでしか動かないので適当なPC端末と直接つなぎます。VE-IG1のデフォルトのIPアドレスは192.168.0.1です。VE-IG1をつないでブラウザで192.168.0.1を開くとルータの設定画面のような画面が開きます。今回設定した画面はVer. 2.06です。Ver. 1.01の設定はICOM VE-IG1をどうぞ。
続きを読む…


タグ

, , ,

関連する投稿

26
3月

Asteriskとひかり電話で外線接続

AsteriskはIP-PBXなのでひかり電話とつなぐのは簡単です。ひかり電話のゲートウェイ、通常は光回線の終端装置&ルータにAsteriskをregisterすればすぐ使えるようになります。ルータ側の設定は機種やファームウェアのバージョンによって少し違うようです。うちの環境はPR-200NEという機種でファームウェアのバージョンは6.38でした。

まずAsteriskをひかり電話に対応させるにはパッチを当てる必要があります。基本的にはAsteriskのソースにパッチを当てて再コンパイルすればOKです。パッチを当てる具体的な手順は以下のようなやり方になります。なお設定ファイルが初期化されてしまうのでmake configは実行しないでください。

# cd asterisk-1.4.24
# wget ftp://ftp.voip-info.jp/asterisk/patch/local/1.4/channels/chan_sip.c.rt200ne.070417-02.patch
# patch -p0 < chan_sip.c.rt200ne.070417-02.patch ./channels/chan_sip.c
# ./configure
# make
# make install
# cd

続きを読む…


タグ

, , , , , ,

関連する投稿

25
3月

mod_rewriteでRewriteCond %{REQUEST_FILENAME}

CakePHPやWordpressでお馴染のmod_rewrite。ルールの前にRewriteCondを書くことが多いでしょう。CakePHPやWordpressでファイルやディレクトリが実在する場合はルールを適用しないとする以下のような2行が書かれています。CakePHPやWordpressのファイル以外のファイルと共存させる場合などはこの2行が重要になってきます。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

しかし、このRewriteCond %{REQUEST_FILENAME}が効かない、実際にファイルやディレクトリが実在するのにルールが適用されてしまう、CakePHPやWordpressで.htaccessをいじっているとそんな感じでハマることがあります。
続きを読む…


タグ

, , ,

関連する投稿

24
3月

Windows Update後の再起動ダイアログ

Windows Update後に再起動を促すダイアログが表示されます。「後で再起動」をクリックしても5分くらいしたら同じダイアログが表示され、更に放置すると勝手にカウントダウンを始めて勝手に再起動してしまいます。オーサリングソフトなどの作業ならまだしも、バッチ処理などで放置中に出ようものなら気づいた時が後の祭り。バッチ処理するような長い処理を再度実行しなければならなくなります。

送信者 Blog

続きを読む…


タグ

, , ,

関連する投稿

23
3月

CakePHP1.1でFCKEditorヘルパー作成

CakePHPにFCKEditorを設置するためにググってたらFCKeditor – 設置編を見つけました。ん~ずいぶん古い記事ですね。Javascript書けば良いだけなんで手軽ですが使いたい場所でホイっと使えるようにヘルパーにしたい。ということで再度探すとCakePHP1.2RC3でFCK Editorを使うを見つけました。おお~…でも今回使っているのは諸事情によりCakePHP1.1なんです。

cakePHPでFCKeditorを使う(cakePHP1.1x系)も見つけたんですが、こりゃただJavascriptを吐いてるだけですね。この後ファイルアップロード云々するためにはPHPでやっておきたいのでCakePHP1.2RC3でFCK Editorを使うをCakePHP1.1用に書き直すことにしました。…と言ってもほとんど変わりません。強いて言えばデフォルト値を読み込めるようにしたことでしょうか。
続きを読む…


タグ

,

関連する投稿

22
3月

Asteriskで内線電話を構築

Asteriskで内線電話を構築するのは比較的簡単です。ユーザを作成し内線番号がダイアルされた時の処理をextensions.confに記述すれば良いだけです。まず以下のようにユーザを2つ追加します。これで6000番と6001番の内線番号が使用可能になります。Asteriskのインストールを参照して適当なクライアントPCを登録してください。

# vi /etc/asterisk/users.conf
#以下を追加
[6000]
type=friend
username=6000
secret=1234
canreinvite=no
host=dynamic

[6001]
type=friend
username=6001
secret=1234
canreinvite=no
host=dynamic

続きを読む…


タグ



関連する投稿

?>-->