アーカイブ: 2008年6月

住信SBIネット銀行がお得

パーマリンク 2008/06/30 23:00:00 著者: kumaold メール
カテゴリ: ニュース批評

明日、7月1日から住信SBIネット銀行の手数料が改定されます。

なんと、他行宛振込150円かつ月3回無料というネット銀行で最高の条件です!

今メインに使っているイーバンク銀行は他行振込160円ですが、9月から3万円以上は250円に値上げということです。
ここはサブプライム関連で損失出してから、手数料値上げなどサービスが悪くなる一方なので、ユーザが増えれば乗り換えようかな~と思います。



絶対トクする!ネット銀行120%活用ガイド絶対トクする!ネット銀行120%活用ガイド
大和田 智美

アーク出版 2002-06
売り上げランキング : 87871
おすすめ平均

Amazonで詳しく見る

テレビ愛知が見たい

パーマリンク 2008/06/28 14:38:34 著者: kumaold メール
カテゴリ: 無線, 地デジ

テレビ東京系のテレビ愛知(TVA)、現在加子母では共聴設備のケーブルテレビに加入している場合のみアナログ放送で見れます。

しかしデジタル化が進む最近、区域外再送信が認められていない事例が増えてきたため、今後見られなくなる可能性が高いです。

そこで無謀とも思えるTVA直接受信にチャレンジしてみました。


まずは公式エリアマップ。瀬戸から出力1kW(EPR:9.6kW)、23chで送信中です。
愛知県の県域放送なので当たり前ですが、非常にエリアは狭いです。

距離にして約70キロ近くはあります。


以前から地元のデジタル開局は2010年と分かっていたため、2007年から地元で多分一番乗りで地デジを受信していたため設備は万全です。

アンテナは、共同受信用26素子UHFアンテナ『US-LD26VR1』です。
どう考えても業務用なので長さ2.4m、幅1.1mもあります。


↑クリックで拡大


これだけ大きいと十分な支えが必要なので地面に単管足場Φ48.6mmポールを埋め、コンクリート固めをしてあります。

デジタル放送用にC/N値を確保するため、前置ブースタには出力は25dBですが、雑音指数2.0以下の『HB-U25M』を使用しています。BS混合もできて便利。


↑クリックで拡大


この設備を通して、デジタル3波チューナ『DT330』で確認したところ、残念ながら視聴可能レベルの30には届かず。しかし電波は確実に届いているようです。

そこで手元のワンセグチューナ『DH-ONE/U2』を改造し、同軸ケーブルの先端をこれにつなげてみました。意外にもそれが大成功で、アンテナレベル20以下の局も楽々受信に成功しました。

ワンセグという画質の制約はありますが、遠距離受信ではアナログと比べると十分実用に耐える画質なので十分です。
できればフルHDで受信したいなぁ。

物理ch放送局名ANT-Lvワンセグフルセグ
13chNHK教育・名古屋27-37
18chCBC37-39
19ch中京テレビ33-39
20chNHK総合・名古屋33-37
21ch東海テレビ25-30
22chメ~テレ28-33
23chテレビ愛知16-18×
28chNHK総合・津10-12×
29chNHK総合・岐阜12-17×
32chぎふチャン12-17×

 


↑クリックで拡大

 

よくわかる地上デジタル放送―2011年7月25日テレビが変わる日よくわかる地上デジタル放送―2011年7月25日テレビが変わる日
河村 正行

電波新聞社 2007-03
売り上げランキング : 196569

Amazonで詳しく見る
type="text/javascript">
type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">

Yahoo!電話帳は拾いにくい

パーマリンク 2008/06/27 22:11:42 著者: kumaold メール
カテゴリ: 仕事, プログラミング

勉強会の制作の一環で先日から作っている地元地図ですが、データ取得元ということで位置情報があるYahoo!電話帳を利用することにしました。

ところがこれ、住所、電話番号等の前方一致による検索検索がありません。
そのため、短い地名など指定すると全国の同名の場所も出てきてしまいます。

カテゴリ検索もあるにはあるんですが、構造が
【都道府県>市区町村>大分類>中分類>小分類>地区名】

なんですよ。実例を出すと、
【岐阜県>中津川市>情報、通信>広告、調査>ソフトウェア>加子母】

といった感じで、どう考えても地区名の位置がおかしいだろって感じです。

そのおかげで市内では広すぎるエリアのデータを取るのに苦労しました。
何たって、カテゴリ数がIDから察するに5000以上あるんですから。

暫定地元仕様で、「加子母」のつくカテゴリだけ拾ってくるようにしてます。
まあ200件超しかないんですが、取得は実に45秒もかかります。

もっと汎用性と速度が向上するようなプロセスを考えねば・・・

type="text/javascript">
type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">

Apacheでの複数ドメイン運用

パーマリンク 2008/06/25 23:45:25 著者: kumaold メール
カテゴリ: 仕事, サーバ関係

1つのサーバ、IPアドレスで複数のサイト(ドメイン)の運用ができると便利です。
Apacheでの最も基本的なバーチャルホストを使った方法のメモ書きです。

サブドメインでは面白くないので、適当なドメインを取得します。

DNSレコード設定も忘れずに(VALUE-DOMAINの場合)

a @ 123.45.67.89
a www 123.45.67.89


/usr/local/apache/conf/httpd.conf を編集

#NameVirtualHostを有効にする
NameVirtualHost *:80

#最初からあるドメインもバーチャルドメインにする
<VirtualHost *:80>
    ServerName domain1.com
    DocumentRoot /usr/local/apache/htdocs
    ServerAdmin webmaster@domain1.com
</VirtualHost>

#追加のドメイン
<VirtualHost *:80>
    ServerName domain2.net
    DocumentRoot /home/www
    ServerAdmin webmaster@domain2.net
    ErrorLog /var/log/apache/domain2_error.log
    CustomLog /var/log/apache/domain2_access.log common
</VirtualHost>


これで追加ドメイン用のディレクトリも作成して準備万端なはずでしたが・・・

アクセスしてみると、『403:Forbidden』でテストページが表示されず。
ディレクトリのパーミッションも所有者も正しく設定したはずなのに。

Google先生の力を借りてみると、httpd.confに追加設定が必要とのこと。

<Directory "/home/www">
    Order allow,deny
    Allow from all
</Directory>


これで問題なくセカンドドメインでの運用もできるようになりました。
なお、IPでアクセスした際にはhttpd.confの記述順で表示されます。


できるPRO Apache Webサーバー Apache2/1.3対応 (できるPROシリーズ)できるPRO Apache Webサーバー Apache2/1.3対応 (できるPROシリーズ)
辻 秀典

インプレスジャパン 2006-06-01
売り上げランキング : 117337
おすすめ平均

Amazonで詳しく見る
type="text/javascript">
type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">

CakePHP 1.2 日本語化

パーマリンク 2008/06/23 21:42:35 著者: kumaold メール
カテゴリ: プログラミング, PHP, CakePHP

CakePHPもそれなりの規模のフレームワークなので、日本語化も存在するはず…

と思っていましたが、まだRCの1.2に至ってはそうでもないようです。

というのも日本語化フォーラムは存在し、翻訳ファイルは一応あるのですが、CakePHP 1.2用は1年以上前にリリースされたものしかありません。
そのため開発中の1.2ではメッセージもかなり変わって役に立ちません。

そこで、それを元にCakePHP 1.2の日本語化ファイルを作成してみました。
あまりにも量が多いのでとりあえずはコア部分のみですが。


CakePHP 1.2 日本語化ファイル[core.po] Ver.0.1

CakePHP 1.2 日本語化ファイル[core.po] Ver.0.1.1
バグ修正版うpしました【7/2】

日本語化イメージ1 日本語化イメージ2  
 

設置方法
+[CakePHP ルート]
  +[app]
    +[locale]
      +[jpn]
        +[LC_MESSAGES]
          +core.po  ←ここに設置


適当に意訳したところもあるので間違い等あるかもしれません。
いい翻訳例がありましたらお知らせください。

第9回SE勉強会!

パーマリンク 2008/06/22 23:00:00 著者: kumaold メール
カテゴリ: 仕事, 勉強会など

今日は高蔵寺で第9回SE勉強会でした。

1.宿題


今回の宿題は、またまた自由課題的なことだったわけですが、
ネタが思いつかなくて手抜きのライブラリ紹介みたいなものになってしまいました。

[出題者]MICK [お題]言語:PHP

PHPで画像を扱った何かを作ってみてください。
ちょっとしたものでも、おぉー♪というものでも何でも結構です!


元々は、phpの画像処理まわりを調べていたら偶然出てきたものです。
その名は、phpOCR ←DLには登録(regist)が必要

名前のとおり、画像から文字認識するライブラリです。
海外発らしく日本語のドキュメントが一切なくて苦労しました。


とりあえずまずは見た方が早いので→サンプル改


今回はコードを書くと長くなるので改造したサンプルのZIPを見てください。
その代わりに、各ファイル構成と原理・注意を解説します。

+OCR
  +img             登録する文字の画像をSJISコード.pngで保存
     xxxx.png      (ex.あ→820a.png)
  +strage          登録した文字のバイナリデータが入る
     Xxxxxxxxxxxxxxxxx.char    自動生成
  +test            読み取る画像を1画像1文字で1~連番で保存
     X.png
  OCR.class.php    メインライブラリ
  char.object.php  付随ライブラリ
  config.php       設定(特に編集の必要なし)
  regist_chars.php 新たな文字を追加する際に編集&実行
  charcode.php     SJISコード確認用補助ツール
  sample.php       公式サンプルを改造したもの


本来は日本語など対応しているわけもないんですが、追加機能で画像・文字をあらかじめ記録させておけば、読み取れるようです。

登録作業は、文字の画像をSJISコード.pngでimgディレクトリに置き、regist_chars.php を編集後実行します。完了するとstrage ディレクトリ内にファイル名が登録した文字で始まるバイナリデータファイルが作成されます。


今回、基本文字として登録したデータはMSゴシック 12pxです。
そのため、読み取れるデータはMSゴシック 12pxで画像上に描画したデータの整数倍比率拡大(要はドット対応比がそのまま)になります。

なお、色に関しては2階調かそれ以上でも結構ですが、文字・地のどちらかは黒(#000000)か白(#FFFFFF)である必要があるようです。

あとは、1文字1画像なので何らかの分割処理を挟めば実用性も上がるかと。


長くなりましたがこんなライブラリもあるということで。

 

2.発表
・CSSの基本と共通化サンプル by MICKさん

開発者のやる気をアップさせるようなデザインということで実にきれいにまとまっていてすごいなと思いました。

・XML入門 by パンダさん

前回の宿題をやったときからXMLって処理が面倒だと思っていましたが、扱い方次第だということがよく分かりました。 XMLは色々応用が利きそうなので、勉強していきたいです。

 

3.開発?


今回から何か新しいことをやっていこうということで、「地域HP用コンテンツの制作」に取り掛かることになりました。


前々から、Google mapsと携帯GPSを使って何かを作ってみたかったので、地域に特化した地図を作っていこうと思いました。

携帯版からは、GPSで現在地から最寄の施設などを検索できるようにしようと思います。

ネットが不安定

パーマリンク 2008/06/19 20:44:18 著者: kumaold メール
カテゴリ: メインPC, ネットワーク

ここ数日、自宅のネットが繋がりにくくなってます。

最初はIEで一部の画像が表示されなかったり、タイムアウトになることが多かったのですが、最近はDNSの名前解決すら怪しくなってきました。

IEだけでなくほかのソフトにまで影響が出てきています。

しかし、ネット回線自体に問題があるわけではないようです。
Virtual PC 2007上のXPでは普通に使えるので(←この投稿も)

ここ1年近くOSを再インストールしてないので、そろそろ入れ直しますか。

再起動したら嘘のように直った。一体なんだったんだろ。


Windows XP再インストール完全バイブルWindows XP再インストール完全バイブル
橋本 和則

日経BP出版センター 2004-07-22
売り上げランキング : 228105
おすすめ平均

Amazonで詳しく見る

CakePHPで任意のJOIN

パーマリンク 2008/06/18 19:10:08 著者: kumaold メール
カテゴリ: プログラミング, PHP, CakePHP

今週も時間的余裕のある日が多く、CakePHPの勉強を中心的にやりました。

使い慣れてくるとアソシエーションも自動でやってくれるのは非常に便利なんですが、主キー以外での結びつけがうまくいきません。

そこで直接JOIN文を直接打ち込みできないものかと調べてみました。
調べた中で一番簡単な方法でこれに落ち着きました。

これをJOINされるテーブルのあるModel内に書くことで、find前に設定されます。

function beforeFind(&$queryData) {

    $queryData["joins"][] = array(
        "type" => "INNER",     //INNER or LEFT
        "alias" => "Table",    //cakePHP名(モデル名)
        "table" => "tables",   //JOINするテーブル名
        "conditions" => array("JOIN文"),
        //JOIN文のテーブル名はCakePHP名を使う(ex. Table.id)
    );
    return true;
}


これだけであとはControllerなどは一切変更しなくても普通に使えます。
毎度結合させる必要があるテーブルにはこれで十分です。

GyaOで途端にIEが落ちる

パーマリンク 2008/06/17 22:00:00 著者: kumaold メール
カテゴリ: デジタルモノ, メインPC

地デジの録画ミスで見れなかった番組を見ようとGyaOを開いたら、トップページが開いた瞬間に『問題が発生したため…』の忌まわしきエラーでIEが落ちました。

何回やっても駄目だったので、スタンドアローン版IE7にて。
エラーこそ出なかったものの同様に開いた瞬間に予告もなしに終了!

IEみたいな欠陥ブラウザではよくあることなのでFirefoxで使おうにも、
今どき珍しいFirefox非対応サイトですかorz


ここはGoogle先生の力のお借りしてみると、

1.C:\Documents and Settings\All Users\DRM を削除
2.http://drmlicense.one.microsoft.com/Indivsite/ja/indivit.asp にアクセス
3.『Upgrade』ボタンを押す

これで万事解決しました。
いい加減IEも安定版出してくれよ・・・



簡単!!!ストリーミングぶっこ抜き!!!―Gyaoを簡単に保存する裏技! (セブンベストMOOK 40 ネットプレイヤーマニアックス 8)簡単!!!ストリーミングぶっこ抜き!!!―Gyaoを簡単に保存する裏技! (セブンベストMOOK 40 ネットプレイヤーマニアックス 8)

セブン新社 2006-02
売り上げランキング : 509828

Amazonで詳しく見る

phpPgAdminの導入

パーマリンク 2008/06/13 13:57:00 著者: kumaold メール
カテゴリ: 仕事, サーバ関係

やっと宿泊ネットのDBメンテナンスが片付いて落ち着いてきたので。
再びサーバの方の勉強に入りたいと思います。

自宅でもDB(MySQL)管理をしやすくするために、phpMyAdminを導入しています。

それのPostgreSQL版ということで、今回phpPgAdminを導入します。

phpPgAdminの導入
  • ダウンロード
  • 設置・設定
  • アクセス制限

続きを読む »

犯罪予告検知ソフト

パーマリンク 2008/06/11 21:56:11 著者: kumaold メール
カテゴリ: ニュース批評

なんとなくYahoo!のトップニュースを見て突っ込まずには居られなかったので。

犯罪予告検知ソフト開発へ
増田寛也総務相は11日、インターネット上の犯罪予告を検知できるソフトウエアの開発費を、来年度予算の概算要求に盛り込む方針を明らかにした。
同日開かれた、東京・秋葉原の通り魔事件を受けた再発防止のための関係閣僚会議終了後、記者団に語った。
 開発が検討されるソフトは言語技術を応用し、違法・有害情報の検出精度を向上させるもの。通常とは異なる急激な書き込みの増加や、自殺や殺人予告などの言葉を使った議論の流れなどを分析し、犯罪につながるような情報を認知できるようにする。業界関係者によると、ソフト開発には少なくとも数億円の費用が掛かるという。


開発者でなくても多少の知識があれば明らかに馬鹿なことだと分かりますが、

1.膨大なインターネット上に無限大に拡張し続ける掲示板類からどのようにデータを収集し、『通常とは異なる』状態を検知するのにどれだけのストレージが必要か

2.数億円の貴重な税金を投入してまでも無理矢理開発させる意味があるのか

3.仮に書き込みを検知できたとして、それが犯罪防止になり得るのか

4.釣り、ネタなど不本意の書き込みの判別はどうするのか
 (某掲示板の佐賀の一件:ニュースで告知佐賀祭りに)


ツッコミ所はこれだけではとても収まりませんので、自重しときます。

お役人から口と金だけはすぐ出るが、実現性と費用対効果を考えろ!
無知だからこそ出た発言なんだろうなぁ
 
 

税金は何処へ消えたのか?―借金大国なのに、政治家・役人が無駄づかいを続けるワケ税金は何処へ消えたのか?―借金大国なのに、政治家・役人が無駄づかいを続けるワケ
阿部 員大

ごま書房 2008-03
売り上げランキング : 405378

Amazonで詳しく見る

雷対策をしとかないと・・・

パーマリンク 2008/06/11 14:05:29 著者: kumaold メール
カテゴリ: 仕事, PCサポート

昨日は、お客さんのところで月曜の雷の後からネットワークがおかしい、ということで出張修理に昼から出かけていました。


状況を確認してみると、DHCPでIPが振られない点を考えるとルータに雷が入ったのかな?と思い、ルータ交換をしました。

しかし、基幹LANのLINKランプが点灯しません。
複雑なLAN構造を辿ってみると、ルータ直下にあるHUBの電源が入りません。
そこで、近くの家電量販店でHUBを購入し交換をしました。


それでも、そのHUBに繋がる基幹LANのLINKランプが点灯しません。
その下にあるHUBはランプの点灯具合で正常に動いているように見えました。

仕方なく持参のHUBと差し替えてみたら、ネットワークが復活しました。
何と、1ポートと7ポートだけが見事に故障していました!

後で分かったのですが、さらにその下のHUBも交換されていたようです。
つまり、4段にも亘って雷の高電圧が突き抜けていったことになります。

ネットワーク構成簡略図

         故障   故障  2ポート故障 故障
━[ADSLモデム]━[ルータ]━[HUB]━━━[HUB]───[HUB]─[PCs]
          │   │     |||
         [PC]  [PC]    [HUB/PCs]



PCにまで被害が及んでなかったのは不幸中の幸いですが、やはり一番に雷対策(雷サージ、アースなど)をしていなかったことも十分な要因です。

コンセントを抜いてもLANから進入することが多いので、突然の落雷が多いこの時期、LANの雷サージも忘れずに導入したほうがいいですよ。
 

APC PROTECTNET ギガビットサージプロテクション PNET1GBAPC PROTECTNET ギガビットサージプロテクション PNET1GB

エーピーシー・ジャパン
売り上げランキング : 39033
おすすめ平均

Amazonで詳しく見る

昨日の夕立はひどかった

パーマリンク 2008/06/10 10:38:26 著者: kumaold メール
カテゴリ: 仕事, 日々の生活

仕事で恵那まで出向いたその返り際、4時の割に異様に外が暗いんです。
車の前照灯つけないと危ないくらい。

19号を走ってケーズデンキ辺りまできたら突然雨が降り出しました。
しかも強くなる一方で、今まで経験したことないほどの大粒の雨。
最悪の時期には視界が10mあるかないかぐらいでした。

おかげで谷間になっているこの辺りを通過したときに10cmほど冠水していたため、激しく水をかぶってしまい、エンジンの調子がまた悪くなってしまいましたorz


後で気象庁HP見たら恵那で10分間に11.5ミリ(70ミリ/h相当)の降水だとか!


工業団地に勤める友人の話によると、瞬電でPCが落ちて2時間分の実験データが吹っ飛んでしまったとのこと。

流石に自宅鯖3台もあると停電・雷対策で使っているUPSの容量を増やさねば…


APC Smart-UPS 750 (750VA) SUA750JBAPC Smart-UPS 750 (750VA) SUA750JB

エーピーシー・ジャパン 2005-05-28
売り上げランキング : 26814

Amazonで詳しく見る

第8回SE勉強会!

パーマリンク 2008/06/08 23:47:09 著者: kumaold メール
カテゴリ: 仕事, 勉強会など

さて、本日も恒例?の第8回SE勉強会でした。

今回は、あつさんからの出題でいつもとは一風変わった宿題でした。
Amazon Webサービスを使ってPHP/JavaScpiptで何か作るというものです。

まあ自由課題なんで何を作ってもいいわけなんですが、そもそもAWS自体扱ったことがなかったので最初はサンプルコードの理解だけで苦労しました。


しかし普通~にフォームからデータ渡して表示だけでは面白くなかったので、また今回も妙なことをやらかしましたw

説明も面倒なので実際に使ってみましょう。

携帯・PCなどからこちらに、件名(Subject:)を検索ワードで送ると、検索結果が数秒後にメールで返信されてきます。
検索対象は本(書籍)のみ。売り上げ上位最大10件表示。

amazon@kashimo.com[@は半角に]

※文字化け問題は解消されたので日本語混在でも使えるようになりました。


仕事と正反対なソフト群ですが、自宅鯖環境はこんな感じです。
このプロセスを実行させるためには、メールサーバソフトとの連携が不可欠です。

XMailはWindows上で動作するものの中ではかなり拡張性が高く、例えばメール受信時にプログラムを実行させることができます。

それを応用し、今回のシステムを作成しました。

OSWindows Server 2003 R2 SP2
WebサーバInternet Information Service(IIS) 6.0
メールサーバXMail 1.25
データベースMySQL 5.0.51a

 

MailRoot\cmdaliases\kashimo.com\amazon.tab を保存

"external" …受信時にプログラム実行
"0"     …優先度標準
"30"     …タイムアウト30秒
"php"    …phpを実行
"D:\WWW\test\amazon\amazon.php" "$(FROM)" "$(FILE)"
…実行するphpファイルパスと、メールのFROM:、メールのパスを引数にする

注:本当はタブ区切りの全て横1行で表記し、最後は改行します。


phpファイル(コマンドライン実行なのでインタフェイスなし)

<?php
//最後のメール送信部分はスパム対策でFROM:等は伏せておきます。

/******************************/
/*  Amazonメール検索システム  */
/*                            */
/* amazon.php (FROM) (FILE)   */
/******************************/

$mailto  = $argv[1];    //送信元アドレスを取得
$mailtmp = $argv[2];    //メール一時ファイルのパスを取得
//メール一時ファイルのパス取得バグ修正
$mailtmp = substr($mailtmp, 4, strlen($mailtmp) - 4);

//メール一時ファイルを配列に格納
$maildata = file($mailtmp);
//ファイルオープンに失敗したとき
if (!$maildata) {
    $message .= "ファイルオープン失敗\n";
}
//ファイルオープンに成功したとき
else {
    //メールを1行ずつ読む
    for($i=0; $i < count($maildata); $i++) {
        //メールヘッダのタイトル(Subject:)に合致したらそれ以降を切り出し、UTF-8に変換
        if(ereg("Subject", $maildata[$i])) {
            $search_word = substr($maildata[$i], 8, strlen($maildata[$i]) - 8);
            $search_word = mb_convert_encoding(mb_decode_mimeheader($search_word), "UTF-8", "Shift_JIS");
            break;
        }
    }
    //以下、Amazon Web Serviceによる検索処理。
    //xmlで取得し、xml.phpで配列に格納する
    
    // 自分のアクセスキーID
    $AWSACCESSKEYID = "0X64123456789ABCDEF"; 
     
    // 自分のアソシエイトID
    $ASSOCIATETAG = "******-22";
     
    // APIのURL
    $API_BASE_URL   = "http://webservices.amazon.co.jp/onca/xml";
     
    //------- パラメータの値入力
     
    $SERVICE        = "AWSECommerceService";
    $OPERATION      = "ItemSearch";
    $API_VERSION    = "2004-10-04";
    $RESPONSEGROUP  = Medium;
    $KEYWORDS       = urlencode($search_word);
    $SEARCHINDEX    = "Books";    //"Blended";
    $ITEMPAGE       = "1";
    
    $SORTINDEX      = "salesrank";
    $CONTENTTYPE    = "text/xml";
     
    //------- リクエストURLの生成と出力
     
    // リクエストURL生成
    $api_url = sprintf("%s?Service=%s&AWSAccessKeyId=%s&AssociateTag=%s&Operation=%s&Version=%s&ResponseGroup=%s&Keywords=%s&SearchIndex=%s&ItemPage=%s&Sort=%s&ContentType=%s" ,
        $API_BASE_URL,
        $SERVICE,
        $AWSACCESSKEYID,
        $ASSOCIATETAG,
        $OPERATION,
        $API_VERSION,
        $RESPONSEGROUP,
        $KEYWORDS,
        $SEARCHINDEX,
        $ITEMPAGE,
        $SORTINDEX,
        $CONTENTTYPE
    );
    
    // 検索ワードが存在する場合に、商品検索
    if(isset($search_word)) {
        
        // XMLデータを取得
        $xml_data = file_get_contents($api_url);
        
        // XML パースライブラリーを読み込む
        include('xml.php');
        
        // XMLを連想配列に格納する
        $array_data = XML_unserialize($xml_data);
        
        // 検索結果が1つの場合は、階層を変化させる
        if ($array_data[ItemSearchResponse][Items][Item][0]) {
            $item_data = $array_data[ItemSearchResponse][Items][Item];
        }
        else {
            $item_data[0] = $array_data[ItemSearchResponse][Items][Item];
        }
        
        // 検索結果数の取得
        $total_results = $array_data[ItemSearchResponse][Items][TotalResults];
        
        // 検索ワードのメール用デコード処理
        $decode_keywords = mb_convert_encoding($search_word, "Shift_JIS", "UTF-8");
        
        $message .= $decode_keywords . "の検索結果\n";
        
        //検索結果が1件以上あれば
        if ($total_results != 0) {
            //検索結果数を表示
            $message .= $total_results . "件ありました。\n\n";
            
            // item の数だけループして出力
            foreach ($item_data as $item){
                //各項目を、メール用にSJISにデコードする。
                $message .= mb_convert_encoding($item[ItemAttributes][Title], "Shift_JIS", "UTF-8") . "\n";
                $message .= mb_convert_encoding($item[ItemAttributes][Manufacturer], "Shift_JIS", "UTF-8") . "\n";
                $message .= mb_convert_encoding($item[ItemAttributes][ListPrice][FormattedPrice], "Shift_JIS", "UTF-8") . "\n";
                $message .= mb_convert_encoding($item[DetailPageURL], "Shift_JIS", "UTF-8") . "\n";
                $message .= "====================\n";
            }
        }
        else {
            $message .= "該当商品が見つかりません。";
        }
    }
}

//メールアドレスの形式チェック
if(preg_match("/[a-zA-Z0-9\.\-_]+@[a-zA-Z0-9\.\-_]+/", $mailto)) {
    $subject = 'Amazon Mail Search';
    $headers = 'From: *****@*******.***' . "\r\n" .
                'Reply-To: *****@*******.***' . "\r\n" .
                'X-Mailer: PHP/' . phpversion();
    
    $send = mail($mailto, $subject, $message, $headers);
    if ($send) {
        echo "送信成功!\n";
    }
    else {
        echo "送信失敗!\n";
    }
}
else {
    echo "形式不正!\n";
}

?> 

※このサーバはエンコードがShift_JIS基準なのでそれに合わせた。

xmlの配列格納ではPHP XML Library, version 1.2bを使いました。

感想など
 実用性に関しては?ということで…
 今まであまり作ったことない方式でしたが、色々組み合わせて文字化けに苦労しながらも一式作れてよかったです。何かメール送受信を組み合わせたシステムなどに応用できたらいいかなと思います。

Windows Vista/XP で作る 最強の自宅サーバー (CD付)Windows Vista/XP で作る 最強の自宅サーバー (CD付)
タブロイド

ソーテック社 2007-12-15
売り上げランキング : 115577
おすすめ平均

Amazonで詳しく見る
by G-Tools

サーバに嫌な悪寒が・・・

パーマリンク 2008/06/05 12:00:44 著者: kumaold メール
カテゴリ: 仕事, サーバ関係

今週末の勉強会の宿題に取りかかろうとサーバにSSHで繋いでみたら・・・
何か見慣れないエラーが。

-bash: /etc/profile: Input/output error
-bash: /home/user/.bash_profile: Input/output error

なんかログインまわりのファイル読み込みでエラー発生の模様。

とりあえずルートに切りかえっと。

-bash-3.1$ su -
-bash: /bin/su: Input/output error

またしても謎のエラー

viでエラー当該ファイルを開いてみますか

-bash-3.1$ vi /home/user/.bash_profile
-bash: /bin/vi: Input/output error

そもそもvi自体が立ち上がらねぇーーー!!
というか、システム系コマンドほぼ全て、rebootすらできない。

「Input/output error」をググってみると、HDDまわりの嫌~な感じがしてきた。
最悪の事態も考えるべきかな・・・

続きを読む »

FX名物 ヒロセせんべい

パーマリンク 2008/06/03 20:00:00 著者: kumaold メール
カテゴリ: 投資

本当は先週ごろのネタですが紹介しときます。

今FXのメイン口座で使っているヒロセ通商ですが、突如口座を持っている人全員に『ヒロセせんべい』プレゼントなる告知がされていました。
今もある口座開設でプレゼントの賞品を発注しすぎて余った品じゃないかと

で、届いたのがこれ。

まあ、よくここまでオリジナル商品作ったな。

先日からのぶたまんキャンペーンとやら、本業が食品なんじゃないかとw

さらに本日、HiroseTraderのデモトレードに参加するだけで、このヒロセせんべいと1GBのフラッシュメモリを全員にプレゼントするという太っ腹企画を発表!

これは全て無料なら申し込まないと損→HiroseTraderデモコンテスト

車で大須に

パーマリンク 2008/06/01 19:00:00 著者: kumaold メール
カテゴリ: 日々の生活

ここ数日分面倒でブログ放置していたので補完@6/5


本日は久々に友人と大須に行くことになりました。

どうせなら、ということで車で行くことになったわけですが、

名古屋ICまでは中津川から約1時間で到着。
そこから中心部に向かうだけで、距離は30キロもないのに信号と混雑で結局到着したのが11時過ぎになってしまいました。

よくよく考えると車だと表に出にくいだけで、今回移動距離250km、高速代3,200、駐車場代1,600で名古屋に出向くだけで8千円近い金が吹っ飛んだことに

こりゃ最初っから電車で行けばよかったよorz

一六社で働くITエンジニアのブログ。

普段はWeb系システム開発と地元のPCサポートをやってます。いつの間にやら会社に8年目。
技術ネタ中心に日々の仕事と生活と趣味やらを気が向いたら書いてます。

2008年6月
 << < 現在> >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

検索

XMLフィード

16ブログ     blogging soft