オープンにしてみた

今までこのサイトは人知れずやってたのですが、Twitterでaddをする時に自分のサイトが無いとなんとも繋がらないよなあと思って、ここのURLを載せてみました。
で、そんなら今まで公開していなかったMixiにも載せてしまおうということで載せました。
まあ、URLの割には何も提供できてないんですけど・・・。

これでスパムコメントとか増えたら凹みますが、それ以上に何か繋がりが出来たら嬉しいです。

Google Co-op導入&UTF-8化

決して暇じゃないのですが、立て続けにやっちゃいました。
Google Co-opというのは、簡単にいうと自分用のGoogle検索エンジンが作れるって感じですかね。
検索結果もデザイン面ではほぼ自由です。
設置も簡単で、なんだかんだで2時間ぐらいで出来ました(主にデザイン面の調整)。

Ethnaに取り込もうとしたら、Google Co-opでも引数を使ってるんで変なことになってしまいました。
なので、素直にhtmlを作成。
まあ、しゃーないですね、Namazu入れるよりは楽です。

あと、サイトもUTF-8で出力できるようにしました。
今まではEUC-JPで頑張ってたんですが、それだと日本語が通らなかったので。
Javascriptで検索結果を表示とかしてるんで、しょうがないですな。
まあ、結果的に今時になったので良かったです。

上の方に検索ボックスが表示されてるんで、それでこのサイト内を検索できます。
Googleさんが探してくれるので、それで見つからないなら諦めてください・・・。

参考サイト
EthnaでShift_JISなサイトを作る
Shift_JISの部分をUTF-8に変更するだけ。

5分でわかる Google Co-op 導入方法
英語のサイトでしたが、この記事のおかげで非常にわかりやすかったです。

お客さんさえ良ければ、Namazuとか入れるよりもお手軽&高性能だし、最高だと思うのですがどうなんでしょうかね。
全てGoogleに頼ってしまうってのは、ちょっと怖いですけど。

QRコードを自動生成

どうもご無沙汰してます、生きてます。

さて、久しぶりにチャレンジチャレンジ。
記事毎のQRコードを自動生成してみました。
需要はまったく無いんだろうと思うのですが、ここぐらいしか自動生成する場所も無くとりあえず・・・。

ちょっと探せばPHPでQRコードを自動生成してくれるライブラリを公開してくれている人が。
QRコード・バーコード - QRcode & Barcode

そのおかげで、ものすごく簡単に出来ました。
Ethnaに取り込むのも楽々でした。

ということで、飽きるまでちょっと表示をしておこうと思います。

日記のリンクの表示変えました

見易くなりました。
ずっと気になっていた癖に全然やる気が起きなくて、ちょっと気分転換にやってみたら、5分もかからなかったです。

そんなアクティブにいきたい2007。

Mail_mimeDecodeとNet_POP3でメールで更新

仕事で「携帯メールで更新」という要望があったので、このブログをメールで更新ができるようにチャレンジしてみました。
結構難しいかなと思ったんですが、PEARのMail_mimeDecodeNet_POP3を利用すれば案外簡単に出来そうだということがいくつかのサイトでわかったのでやってみました。

参考サイト
PEAR::Net_POP3を使ってPOP3サーバにアクセスしよう
stdinからのメール処理でメール情報を取得する
PEAR で簡易メール受信
PEAR::Net_POP3

上記のサイトを参考にして出来たメール内容を解析するソースがこちら。
一応添付画像もアップロードしてくれるようになっているのですが、僕の携帯が古いので大きなファイルをメールで送信できないんで、あんまり使ってません。

// インスタンス作成
$pop3 = new Net_POP3();

// 接続
$res = $pop3->connect ("domain.name", 110);

// ログイン ( APOP )
$res = $pop3->login( "mail_acount", "password", true);

// 更新件数取得
$numMsg = $pop3->numMsg();

for ($i=1; $i<=$numMsg; $i++) {

    //メールをパースする
    $decoder = new Mail_mimeDecode($pop3->getMsg($i));
    $params['include_bodies'] = true; //ボディを解析する
    $params['decode_bodies'] = true; //ボディをコード変換する
    $params['decode_headers'] = true; //ヘッダをコード変換する
    $structure = $decoder->decode($params);

    //送信者のメールアドレスを抽出
    $mailaddress = $structure->headers['from'];
    $mailaddress = addslashes($mailaddress);
    $mailaddress = str_replace('"','',$mailaddress);

    //署名付きの場合の処理を追加
    preg_match("/<.*>/", $mailaddress, $str);
    if ($str[0]!="") {
        $str = substr($str[0], 1, strlen($str[0])-2);
        $mailaddress = $str;
    }

    // 日付を取得
    $date = date("Y-m-d", strtotime($structure->headers['date']));

    // 件名を取得
    $subject = $structure->headers['subject'];

    switch(strtolower($structure->ctype_primary)){

        // シングルパート(テキストのみ)
        case "text":
            $body = $structure->body;
            break;

        // マルチパート(画像付き)
        case "multipart":
            foreach($structure->parts as $part){
                switch(strtolower($part->ctype_primary)){

                    // テキスト
                    case "text":
                        $body = $part->body;
                        break;

                    // 画像
                    case "image":
                        //画像の拡張子を取得する(小文字に変換
                        $type = strtolower($part->ctype_secondary);

                        //JPEGチェック(GIFやPNG形式の画像チェックなども可
                        if($type != "jpeg" and $type != "jpg"){
                            continue;
                        }

                        //添付内容をファイルに保存
                        $fp = fopen("image/tmp/".uniqid("tmp_diary_").".".$type, "w");
                        $length = strlen($part->body);
                        fwrite($fp, $part->body, $length);
                        fclose($fp);
                        break;
                }
            }
            break;
        default:
            $body = ""; 
            $i++;
    }

    // データを取得したら削除
    $pop3->deleteMsg($i);
}

// 接続解除
$pop3->disconnect();

いやあ、ライブラリにおんぶに抱っこのソースですな。

今日は久しぶりに早く帰れたので、さっさと寝たいと思います。
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 7 of 9

アーカイブ

2012

  • 01
  • 02
  • 03
  • 04
  • 05
  • 06
  • 07
  • 08
  • 09
  • 10
  • 11
  • 12

2011

2010

2009

2008

2007

コンタクト

longkey1[at]gmail[dot]com