Wimaxで追加機器オプションでルーターを登録する
Wimaxでは、月々の基本料金+200円で、ルーターを追加登録できます。
これを行うことで、「家用」「外出用」などを使い分けることができ、便利です(※ただし、2つのルーターから同時接続は不可。同時接続を行うプラン(WiMAXファミ得パック)もありますが、これは+2400円程度かかります)。
その追加機器の登録方法ですが、躓いたのでメモ。
ルーター1(回線契約をしているもの)
こちらに接続をする必要はありません。
ルーター2(追加する方)
こちらにPCからアクセスします。ルーターにSSIDとパスワードが記載されているはずですので、PCの無線スポットの一覧から選択し、このルーターに接続します(普通にインターネットにつなぐ要領)。
すると設定画面が開きます。開かない場合は、ブラウザを起動します。
その画面から、プロバイダを選び、手持ちのIDとパスワード(SSIDではなく、プロバイダの会員ページに入るものです)でログインします。
追加機器に関するメニューがありますので、そこから登録します。
VBでWordファイルをutf-8のテキストで保存する
ハマったのでメモ。
タイトルの通り、VBでWordファイルを開き、utf-8のテキストで保存する方法です。
Dim wdApp
Dim wdDoc
wdApp = CreateObject("Word.Application")
wdDoc = wdApp.Documents.Open(Filename:="C:\Test\test3.docx", ReadOnly:=True)
'テキストファイルとして保存
wdDoc.SaveAs(FileName:="C:\Test\test3.txt", Encoding:=65001, FileFormat:=7)
wdDoc.Close()
wdDoc = Nothing
wdApp.Quit()
wdApp = Nothing
ポイントはSaveAsのところ。EncodingはmsoEncodingUTF8といくつのサイトにありましたが、これはVB上では認識されません(☓Encoding:=msoEncodingUTF8)。数字で指定すればOKでした。なお、65001はUTF-8にあたるものです。
http://dobon.net/vb/dotnet/file/readfile.html
FileFormatも同様に数字で。wdFormatUnicodeTextは7を指定します。
http://office.microsoft.com/en-us/word-help/HV080607264.aspxにFileFormatの情報があります。
PHPでチェックボックス(checkbox)の値を受け取る
【ポイント】チェックボックスは配列
チェックボックスは複数選択可能な入力であるので、注意が必要です。PHPなど、CGIで入力を受け取るとき、値が0のときもあり、1のときもあり、それ以上のときもあるので、それに対応しなければなりません。
どのように対応するか、というと、チェックボックスを配列として扱うことです。例えば、checkboxという名前の配列があるとすると、この1つ目にチェックされたチェックボックスのvalueの1つ目が、2つ目にチェックされたチェックボックスのvalueの2つ目が入る、ということです。
次の例では、checkboxという配列に値を格納しています。
<form method="POST" action="checkbox.php">
<INPUT type="checkbox" id="A" name="checkbox" value="A">
<LABEL for="comma">Aを選ぶ</LABEL>
<INPUT type="checkbox" id="B" name="checkbox[]" value="B">
<LABEL for="colon">Bを選ぶ</LABEL>
※labelを設定することで文字列を選んでもチェックできるようになります。
両方チェックされていれば、checkbox[0]のvalueはA、checkbox[1]のvalueはBとなります。
Aだけチェックされていたら、checkbox[0]はA、checkbox[1]は空っぽです。
Bだけチェックされていたら、checkbox[0]はB、checkbox[1]は空っぽです。
このとき、必ず0番目から値が埋められていくことに注意してください。つまり、checkbox[0]には、常にはじめにチェックされたもののvalueが格納されるということです(配列番号がチェックボックスの順番と対応しているということではありません)。
値の受け取りは、次のようにやはり配列を指定して受け取ります。
<?php
//値の受け取り
$checkbox1 = $_POST["checkbox"][0];
$checkbox2 = $_POST["checkbox"][1];
>
この場合、この後に条件分岐をするとすれば、(1)両方チェックされている場合、(2)Aだけチェックされている場合、(3)Bだけチェックされている場合の3つがあります。
(1)はif ($checkbox1=="A" AND $checkbox2=="B")
(2)はelseif ($checkbox1=="A")
(3)はeseif(($checkbox1=="B")
となります。
【Perl】ホームページの更新日時を取得する(html,pdfなど)
ホームページの更新日時取得する方法。
「更新が滞っているページ」や「最も古いページ」を調べたい場合、以下のPerlのコードで更新日時を取得できます。
(1) modifieddate.pl
-
use LWP::Simple;
-
use HTTP::Status;
-
require LWP;
-
require LWP::UserAgent;
-
-
-
while (my $line = <URLLIST>){
-
chomp($line);
-
$url = $line;
-
$request = new HTTP::Request HEAD => $url;
-
-
print "$url\t";
-
print "\n";
-
-
-
}
-
-
を参考に作成
-
(2) urllist.txt
調べるURLはurllist.txtに1行ずつ書いておきます。スクリプトと同じフォルダにおいてください。
http:// hogehogehogehoge/xx.html
http:// hogehogehogehoge/yy.html
http:// hogehogehogehoge/zz.html
ウェブページからリンクを抽出するには以下のようなサイトが便利(リンク、抽出、で検索)。
(3)実行
コマンドラインでmodifieddate.plのフォルダに移動し以下を実行。
perl modifeddate.pl > result.txt
(4)結果
result.txtはこんな感じになります。pdfなどでも取得できるようです。タブ区切りで生成されるのでエクセルなどで読み込んでください。
http:// hogehogehogehoge/zz.pdfThu, 15 Sep 2011 02:23:46 GMT
http:// hogehogehogehoge/zz.html Thu, 15 Sep 2011 02:23:46 GMT
CRONで一定時間ごとにファイルを削除する(さくらレンタルサーバーの場合)
CRONを利用して、サーバー上のファイルを一定時間ごとに削除する方法(さくらレンタルサーバーを利用)。
【CRONで動かすスクリプト】
CRONで直接コマンドを書くこともできますが、スクリプトのほうが柔軟性があるので、次のPHPファイルを動かすことにします。
<?php
foreach (glob('www/XXXX/images/*.jpg') as $filename) {
//変更があってから1時間以上たったファイルを削除
if(time()-filemtime($filename)>=3600){
unlink ($filename);
}
}
?>
このスクリプトでは、globでimagesフォルダ内のjpgファイルを対象に、filemtimeでファイルの更新日時を取得し、timeで現在の時間を取得して比較しています。1時間は3600秒なので、これよりも大きい場合(つまり1時間以上経過している場合)はファイルを削除します。
公開フォルダ(www)には置きたくないので、FTPでwwwの上のフォルダ(home/username)直下におきます。
【CRONの設定】
さくらのコントロールパネルから、「CRONの設定」で次のコマンドを入力(homeの後は自分のユーザー名になります)。
cd /home/XXXX; /usr/local/bin/php xxxxx.php 1> /dev/null
(1)
cd /home/XXXX;
プログラムを置いたところにまずは移動します。
(2)
/usr/local/bin/php
セミコロンと半角スペースを開け、phpの実行ファイルまでのパス。
(3)
xxxxx.php
さらに半角スペースを開けて、home/XXXX直下においたスクリプト名を指定。
(4)
1> /dev/null
これは実行結果をメールでは送らない場合につけます。付けない場合は実行されるごとにpostmasterにメールが届きます。
(5)
時間を指定します。
上の図は、「8時間毎にxxxxx.phpを実行する」という設定です。このスクリプト内で1時間以内のファイルは消さないことになっていますので、厳密には「9時間以内には必ず消去される」ということになりますね。