2008-06-04 [Wed] 嗜好品 [長年日記] 編集
_ 水出しコーヒー
先日から,ネットで「HARIO 水出し珈琲ポット 8人用 1000ml MCP-14」というのを見つけて水出しコーヒーを試している。Blackで飲むにはすこしクセがまだなじめないでいる
2008-06-05 [Thu] 嗜好品 [長年日記] 編集
_ 水出しコーヒー その2
水出しは「TIGER 水出し&浄水コーヒーメーカー ACO-A060SJ」から
それぞれ「ポタポタ」と「ヒタヒタ」と心の中で呼んでいる
豆の量はというと,どれもほぽ1リットル出す感じで,ホットで4〜5ハイ使うとして,ポタポタでは6ハイ,ヒタヒタで8ハイ必要となってくるが,濃く感じるのはホット,ポタポタ,ヒタヒタの順となる。
いいとこ無しぢゃ無いの>HARIO 水出し珈琲ポット
2008-06-06 [Fri] self-education [長年日記] 編集
_ 独学日記
Perlが充分に理解できたわけでもないけど,新たにPHPを少しずつやって行く上でメモっておくつもりで周囲を準備してみたい。まずhtmlで,"helo World."と表示する場合は,
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta name="generator" content="WZ EDITOR 5.0"> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-2022-JP"> <title>self-education 20080606</title> </head> <body> <p>Hello World.</p> </body> </html>とまあ書くわけで,PHPでだと
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-2022-JP"> <title>self-education 20080606</title> </head> <body> <?php print"Hello World."; ?> </body> </html>な感じになる。
つまり自分の理解できた範囲の記録を残していこうかなと考えたのだな
2008-06-07 [Sat] [長年日記] 編集
_ そろそろケータイをかえたくなってきた
使っているのはFoma901なので,思いの外長く使っている
おでかめU30が故障してからも長く,ついでに持っていることを気にしないレベルなのを探しているが,そう簡単には見つからない
いっそCSケータイにするのもアイデアとして・・・・重そうな上に大きそうだよな
_ 独学日記 昨日の続き
PHPの使えるサーバでは,拡張子は".php"でよいのだが,".phtml"が使えることもある。 表示は,昨日使ったprint();以外に,echo;もある。 コードは,<?php print"Hello World."; ?>は
<?="Hello World."?>に置き換えられたりもする
2008-06-08 [Sun] [長年日記] 編集
_ 夜更かししています
早朝と言うよりも未明か? 06/07の25時?
アルコールも入り眠気はとてつもないくらいアルのですけど,以前からやっているPHPの入門書を読んでいると,ヘンに頭の一部が覚醒していたりするのです。電気を消し暗くして寝ようとしても,モンモンと知識欲が出てきて,眠れないのです。
小腹も空いて,つい冷蔵庫を開けて,朝のために用意しいた,そばにも手を出しちゃったし。これは,このまま寝てしまっては1つの知識も得られずにエサだけ平らげただけになってしまうし,と
_ 独学日記 変数とか
PHPでも文字列型,整数,実数など型をあまり意識しないで扱う点は,Perlとよく似ている発想でおもしろい。
これは型を明示し常に意識しながら扱うBASICなどからすぐにやってきたら違和感を覚えることになるが,あまり制約のない名前付けが出来るので,作成者独自のルールを持てばいいだけのこと。またグループで制作するなら,共通の規約を定めておけばよいだけだ。押しつけのないトコが好感が持てる。
まだよく調べていないけど,Perlでは,変数には"$"をつけ,配列全体と連想配列などには別な記号をつけていたようだが,PHPではすべて"$"のような記述を見かける。これから試すので,真偽のほどは,後ほど
2008-06-09 [Mon] [長年日記] 編集
_ いゃその,そーゆう意味ではなくてデスね
近頃利用させてもらい始めたFreeStyleWikiのプラグインで,行末尾に"~"(チルダ)を付けることで改行指示になる"linebreak"が有りまして,丁度作っていた文書の多くがPukiWiki用を想定してたものだから"~"で改行指示させるタイプのが多いし,つい慣れってやつで「こりゃ便利だっ!」と思ったのもつかの間,サイドに出してるカレンダーに今日の表示とカレンダーから発生させた記事があることを示す太字表示がされなくなっちゃたんですよ。
そこで,コードを見てみれば,"~"と"&br;"を一度"\n"に変換してから"<br/>"にしているので,試しに"\n"を別な語句に置き換えてみれば,ドンピシャでね,カレンダー表示への障害が無くなったので,ご報告にといただいた現場に訪れてみれば配布等のライセンス表明がされてないんですよ。で,コードの指摘程度に留めとくかなと遠回しに指摘しといたら,ご親切な方が別なプラグインを教えてくれたのですがね。でも以前そっちも試したのですがうまく"~\n"を"<br/>"へ反映してくれなくて。ご厚意は嬉しいので,お礼だけは述べましたが,はっきり「それは違う」と言えない性分。困ったなあ。GPL表明ぢゃないので,勝手に改造して対応版の公開できないしなぁ。まいったなあ
_ 追記:構造上,自分を呼ぶことはないので,代替え文字は"{{linebreak}}"でいいかと
_ 温かいから暑いに
そろそろ涼しそうなスキンにしてもいいけど,ペンギンもいいですよね。
現在の"sleepy_kitten(改)"を少しいじってみたいと思いますが,これといった素材が見つかりません。あはは
_ 画像は,「ペンギンの達人(http://homepage2.nifty.com/pen-t/index.htm)」,アイコンは「Emperor Penguin Empire〜ペンギンのフリーWeb素材サイト〜(http://www.peso.nu/)」からいただいて,試しにやってみました。
2008-06-11 [Wed] [長年日記] 編集
_ 夜中目が覚めて
ふと気づくと午前3時。今日は早出でないのに無駄なサイクル
_ 事務所でミスをする。どうも頭と身体双方のスイッチが接触不良た゛なと,午後から休暇。ねるぞぉ〜ぐごぉzZzZzZZ
_ PM 08:00 雨天なのに打ち上げ花火の音
南の方から音がする。津田か小松島かな
_ 音だけだったようだ。数発で終わった感
2008-06-12 [Thu] [長年日記] 編集
_ テーマの改造でしたこと
元にしたのが"theme/sleepy_kitten"フォルダーにある"sleepy_kitten.css"で,新たに"penguin"フォルダーを作りコピーして"penguin.css"とリネーム。EUCに対応しているテキストエディターで開き128行ぐらいにある「div.day span.sanchor, div.day span.canchor {」の次にbackground-image: url(icon.gif); background-position: bottom right; background-repeat: no-repeat; padding: 20px 20px 0px 0px;と入れた。同じフォルダーに,イメージアンカーにする画像を入れる。使用したサイズが20x20なので,「padding: 20px 20px 0px 0px;」としたが適宜アイコンサイズに変更。 全体のカラーは12行目ぐらいにある「body {」下にある「background-color: #e0cf87;」,サイドバーは450行目あたりの「div.sidebar {」下の「background-color: #e0cf87;」の"#e0cf87"を好みの色に変更する。 あと"body.jpg"(800×200)の適当なタイトル用の画像をこさえる。 "penguin"フォルダーには,
penguin.css body.jpg icon.gif
_ 再配布に許可がいる画像を含めなくちゃいけないので,やり方だけをメモ。許可を取り添付しちゃうことにすると加工したりファイル名の変更が出来なくなったりして画像は好みのを選びにくくなると判断。
2008-06-15 [Sun] [長年日記] 編集
_ いくつかの条件が重なり断念
ちょうど祖父の命日と言うことで墓参りになるのが慣習の我が家。通勤には二輪ばかりでほとんど乗っていなかったヨツワのバッテリーが上がっていろ上,みんな加齢のため身体の動きが鈍くなり,気持ちも萎えている上に天候も悪そう。そうこうしている間に雨も降り出した。
_ 寝転がったまま読書
CGIでファイルのアップデート方法を自分のものにしたいとおもっている。これまで,本のコピペとかで,あまり加工しないでそのまま使っていたことが多かったが,自作と呼べるモノに使える手段ではない。動作理由など詳細はわからなくてもおおよその概念を理解して,自分のコードとしてみたい。まっ無理そうならコレまで同様にコピペだけど
_ おっ花火か?
すこし開いた南の窓からまぎれもない音がする。見えはしないが
2008-06-17 [Tue] [長年日記] 編集
_ 独学日記 まずPerlのGETで
_ まず"GetPost.html"と名前を付けた次のようなものを用意した。
<HTML><HEAD><TITLE>データを受け取る</TITLE></HEAD> <BODY> <FORM ACTION="./GetPost.cgi" method="get"> 名前<INPUT TYPE="text" NAME="name" value="hoge"><BR> メール<INPUT TYPE="text" NAME="mail" value="hoge@hoge.com"><BR> 郵便番号<INPUT TYPE="text" NAME="zip" value="7777777"><INPUT TYPE="submit" NAME="zip_q" VALUE="ZIP検索"><BR> <INPUT TYPE="submit" NAME="all" VALUE="実行"> <INPUT TYPE="reset" VALUE="クリア"> </FORM> </BODY></HTML>
_ 次に,"GetPost.cgi"と名前を付けたPerlスクリプトを用意。
#!C:/perl/bin/perl $arg = $ENV{ 'QUERY_STRING' }; print "Content-type: text/html\n\n"; print $arg; exit;
_ ZIP検索を押した場合の返値
name=hoge&mail=hoge@hoge.com&zip=7777777&zip_q=ZIP%8C%9F%8D%F5
_ 実行を押した場合の返値
name=hoge&mail=hoge@hoge.com&zip=7777777&all=%8E%C0%8Ds
_ GETでは,こんな感じで環境変数「$ENV{ 'QUERY_STRING' }」に収められて"&"と"="で単純に区切られる。簡単なデータやりとりとしては便利そうだが,セキュリティ的にはどうなのだろう。
2008-06-18 [Wed] [長年日記] 編集
_ 独学日記 ではPerlのPOSTで
前回の"GetPost.html"を一部を書き換えた次のようなものを用意した。<HTML><HEAD><TITLE>データを受け取る</TITLE></HEAD> <BODY> <FORM ACTION="./GetPost.cgi" method="post"> 名前<INPUT TYPE="text" NAME="name" value="hoge"><BR> メール<INPUT TYPE="text" NAME="mail" value="hoge@hoge.com"><BR> 郵便番号<INPUT TYPE="text" NAME="zip" value="7777777"><INPUT TYPE="submit" NAME="zip_q" VALUE="ZIP検索"><BR> <INPUT TYPE="submit" NAME="all" VALUE="実行"> <INPUT TYPE="reset" VALUE="クリア"> </FORM> </BODY></HTML>
#!C:/perl/bin/perl read( STDIN, $arg, $ENV{ 'CONTENT_LENGTH' } ); print "Content-type: text/html\n\n"; print $arg; exit;
_ ZIP検索を押した場合
name=hoge&mail=hoge@hoge.com&zip=7777777&zip_q=ZIP%8C%9F%8D%F5
_ 実行を押した場合
name=hoge&mail=hoge@hoge.com&zip=7777777&all=%8E%C0%8Ds
_ これだけ見れば,"get"と同じ。
そこで,送信フォーム側へ新たに「ファイル<INPUT TYPE="file" NAME="file">」の一文を付けて実行してみたところ,どちらも同様に返値の中に「file=(ファイルのフルパス)」なのが追加されるだけだった。
formタグを書き加え「<FORM ACTION="./GetPost.cgi" enctype="multipart/form-data" method="post">」とする。
-----------------------------7d81b5188b0124 Content-Disposition: form-data; name="name" hoge -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="mail" hoge@hoge.com -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="zip" 7777777 -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="file"; filename="" Content-Type: application/octet-stream -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="all" 実行 -----------------------------7d81b5188b0124--
open (OUT,"> temp.dat"); binmode(OUT); binmode(STDOUT); print OUT $arg; close (OUT);
-----------------------------7d81b5188b0124 Content-Disposition: form-data; name="name" hoge -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="mail" hoge@hoge.com -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="zip" 7777777 -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="file"; filename="" Content-Type: application/octet-stream -----------------------------7d81b5188b0124 Content-Disposition: form-data; name="all" 実行 -----------------------------7d81b5188b0124--
_ むふふふふふ,これは以前メールの読み取りで経験したパターンに近い。バイナリーが直接入っている点を除けばむしろこっちが単純な耕造だ。あと,リストボックスとかラジオボタン,チェックボックスなどの動作も確かめとかなくちゃね。でもね,"CGI.pm"モジュールを使うと簡単なんだ。一度蜜の味を知ってしまうとなかなか離れなくってね
2008-06-19 [Thu] [長年日記] 編集
_ 独学日記 ではPerl4の'cgi-lib.pl'で
まず,Perl5の前にPerl4での手法として"GetPost.cgi"を次のようにしてみる。#!C:/perl/bin/perl require './cgi-lib.pl'; local($key,$val); &ReadParse; while ( ($key,$val) = each(%in) ) { $in{$key} = $val; } print "Content-type: text/html\n\n"; foreach (sort keys %in) { print "$_: $in{$_}<BR>\n"; } print "<hr/>\n"; foreach (@in) { print "$_ <BR>\n" } exit;
all: 実行 file: mail: hoge@hoge.com name: hoge zip: 7777777
$arg=$in{'file'}; open (OUT,"> temp.dat"); binmode(OUT); print OUT $arg; close (OUT);
2008-06-20 [Fri] [長年日記] 編集
_ 独学日記 ではPerl5の'CGI.pm'で
まず,Perl5での手法はより直接的になり"GetPost.cgi"を次のようにしてみる。#!C:/perl/bin/perl use CGI qw(:standard); $Wname=param('name'); $Wmail=param('mail'); $Wzip=param('zip'); $Wzip_q=param('zip_q'); $Wfile=param('file'); $Wall=param('all'); print "Content-type: text/html\n\n"; print "name:$Wname<br>\n"; print "mail:$Wmail<br>\n"; print "zip:$Wzip<br>\n"; print "zip_q:$Wzip_q<br>\n"; print "file:$Wfile<br>\n"; print "all:$Wall<br>\n"; exit;
name:hoge mail:hoge@hoge.com zip:7777777 zip_q: file:C:\Documents and Settings\hoge\デスクトップ\hoge.gif all:実行
2008-06-24 [Tue] [長年日記] 編集
_ 独学日記 ではPerl5の'CGI.pm'で (あと)
先日来より,たまたま作成されているだけなのか解らないことに,'CGI.pm'を呼び込んだ時点で,同一フォルダーに"CGItemp?????"な一時ファイルが作成されて残っていくのだ。内容は,'file'で指定した内容そのもので,むしろコレをリネームすればいいのではと'CGI.pm'を読み返していたが,どうも読み取る力量がなかった。
open (OUT,"> hoge.gif"); binmode(OUT); while(<$Wfile>){ print OUT $_; } close (OUT);
2008-06-25 [Wed] [長年日記] 編集
_ 独学日記 そしてPHPでは
"GetPost.html"から呼び出すスクリプトを"./GetPost.php"に変更。拡張子の部分だけだな
<?php header("Content-Type: text/html; charset=SHIFT-JIS"); print "name : ".$_POST["name"]."<br>\n"; print "mail : ".$_POST["mail"]."<br>\n"; print "zip : ".$_POST["zip"]."<br>\n"; print "zip_q: ".$_POST["zip_q"]."<br>\n"; print "all : ".$_POST["all"]."<br>\n"; print "file : ".$_FILES["file"]["name"]."<br>\n"; if ($_FILES["file"]["name"]){ move_uploaded_file($_FILES["file"]["tmp_name"], $_FILES["file"]["name"]); } ?>
_ 今回のネタは,こんなところで早くも終わった?