あたらしものずきっ!

試してみたものとか、遊んでみたものを色々記してみます。

Perl

XML::LibXMLとかCPANとか

コードを書きつつも、もしかしてCPANに使い勝手がいいモジュールあがってるかもしれない、と漁る日々。XML::LibXMLでDOM使って書けることが分かったので、延々弄ってた。 use XML::LibXML; でいける。 cd /Library/WebServer/CGI-Executables vim domsample.…

flockをいじってみた

flockが今借りてるサーバでも使えるようなので、ローカルで試しに組んでみることにした。flockは flock(HANDLE,$number); のように使い、$numberは 1 : 読込で書込をロックして、あとから来たのは待機。 2 : 書込で書込読込をロックして、あとから来たのは待…

CGI.pmだけでいけそうなことに気がつく

CGI - 簡単なCGI(Common Gateway Interface)クラスをみてたら、CGI.pmだけでhtml出力がまかなえることに気がついた。 #!/usr/bin/perl use strict; use warnings; use CGI; my $objCgi = new CGI; print $objCgi->header, $objCgi->start_html('tetest'), …

ファイルの読み書きと掲示板ぽいの完成?

あとはファイルへの書き込みを残すのみ。ファイルハンドラを明示指定する必要があるため調べてみた。 > : 上書き書き込み >> : 追加書き込み 書き込み時は、共通してファイルの作成も兼ねる。 頭に + をつけると読み書き兼用になる。が、解説サイトによって…

排他制御用ディレクトリを作成してみる

排他制御を行うためには関数を使うということなんだけど、環境によって使えたり使えなかったりとあるため、並べてみた。 symlink windows環境下では動かない open 2つの処理にまたがるため、処理途中で割り込みがくる可能性がある flock サーバによっては使…

投稿フォームを作ってみた

とりあえず投稿できないと掲示板ですらないだろう、と思って、簡易フォームを作ることにした。問題はフォームの要素を取得するのが物凄く面倒な気がしたこと。が、CGI.pmのモジュールを使うと細かいことを気にせずに書けることが分かったので、さっそく使っ…

ファイル読み込んで表示させてみる

cd /Library/WebServer/CGI-Executables vim table1.pl iキーが本来のinsertキーだと初めて知った…。ファイル読み込みはopen ハンドラ,ファイル名。読み込み失敗に備えて、||の後に今回はexitいれて、そのまま処理を終わらせることにした。さっき書いたtable…

Tableを書いてみる

制御の練習としてTable書いてみた。掲示板でも投稿表示には使うかもしれないから。 vim table1.pl sキーおして、 #!/usr/bin/perl use strict; use warnings; print "Content-type: text/html\n\n"; print "<table border=\"1px\">"; my $count = 0; while($count < 5){ print "<tr><td>".$</td></tr></table>…

perlを書いて覚えてみる

perlを覚えてても損はないと思ったので、ひたすら書いて覚えてみることにした。Windowsは面倒なのでMacで。id:amachang氏のMacBook 買った後にやったことまとめをみたあとに、衝動的に買ってしまったMacBookにて。OSX Leoperd環境。なにか目標がないとすぐ諦…

htmlの出力をやってみる

掲示板みたいなものを作る上で、とりあえずブラウザ上に表示することが先決だろうと思い、実際に表示するためにはどうすればいいのか検索してみた。 perl HTML表示 - google 最初にヘッダを出力する必要があるようなので、Content-type... を書いて、ヘッダ…

もりあがらないのは

操作感と仕組みがすでにある環境の延長上にあるわけじゃないから。せっかく慣らした環境と全然沿わない代物がでたら、そりゃ試す気も起きないさ。 plaggerのインストールが正常だったようなので 関連したのをcpanからあさくってみてましたが、install Hatena…