投稿者: lllnorikolll, カテゴリ: メモ箱, tags: PHP
PHPで日付の妥当性チェックをする際に、checkdate関数をよく使うのですが、
マニュアルをよくよく見ると・・・
「年は 1 から 32767 の間となります。 」と。。。
で、気になったわけです。
[テキストボックス]年[テキストボックス]月[テキストボックス]日
という見た目の入力項目で、年のテキストボックスに西暦の下2桁を入れた場合どうなるのか。
試しに「78」と入力してみると、みごと日付は妥当だと判断されるんですね。
で、そのままmysqlでdate型になっているカラムにインサートしちゃうとどうなるかというと。。。
そこは補完が効いて「1978」年で登録されると。
「08」と入力するとDBでは2008年で登録されると。
境目は「69」と「70」のところにあって、
「69」⇒「2069」
「70」⇒「1970」
と補完されました。
この境目については、epoch前とepoch後というWassrメッセージを頂いているのですが、ここでは割愛・・・
結局、年の部分に4桁のチェックは必要だなぁ。と、思った次第です。
あと、テキストボックスの場合は、左側に「西暦」とか表示してあげるとわかりやすいと思いました。
以上、メモ書きでした。
コメントなし »
Wassrで流れている発言のなかから、きになった。
コレ⇒http://9arrows.com/
コメントなし »
苦労したのでメモ。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| $Url = 'http://ほげほげー.com/ほげー/ほげー.php';
$UserId = 'ユーザID';
$Pwd = 'パスワード';
$binaryData = @file_get_contents(’ファイル名’, FILE_BINARY);
$arrUrl = parse_url($Url);
$host = $arrUrl["host"];
$path = $arrUrl["path"];
$port = isset($arrUrl["port"]) ? $arrUrl["port"] : 80;
$socket = @stream_socket_client('tcp://' . $host . ':' . $port);
$strHeader = "POST " . $path . " HTTP/1.1\r\n" .
"Host: " . $host . "\r\n" .
"Content-type: application/jpeg\r\n" .
"Authorization: Basic " . base64_encode($UserId . ":" . $Pwd) . "\r\n" .
"Content-length: " . $entity->size . "\r\n" .
"\r\n";
@fwrite($socket, $strHeader . $binaryData . "\r\n");
while ($buff = @fread($socket)) {
$response .= $buff;
}
@fclose($socket); |
ちなみにZendFrameworkのライブラリにZend_Httpという便利なものがあります!!!
Zend_Httpなら、下記のように書くだけ!
1
2
3
4
5
6
7
8
9
10
11
| require_once 'Zend/Http/Client.php';
$Url = 'http://ほげほげー.com/ほげー/ほげー.php';
$UserId = 'ユーザID';
$Pwd = 'パスワード';
$binaryData = @file_get_contents(’ファイル名’, FILE_BINARY);
$client = new Zend_Http_Client();
$client->setUri($Url);
$client->setAuth($UserId, $Pwd, Zend_Http_Client::AUTH_BASIC);
$client->setRawData($binaryData, 'application/jpeg')->request('POST'); |
コメントなし »
Vista+xamppで、Gallery2のモジュールのひな形を作るメモだったりします。
[スタート]⇒[コンピュータ]を右クリック⇒[プロパティ]⇒[システムの詳細設定]⇒[続行]でシステムのプロパティ画面が開く。「詳細設定」タブの「環境変数」ボタンを押す。
「システムの環境変数の欄に「Path」という項目があるので、その項目を選択して「編集」ボタンを押す。「変数値」の最後に「;c:\xampp\php」を追記。
で、OKOKで画面を閉じていく。コマンドプロンプトを立ち上げっぱなしの場合は、一度閉じてから開く。
実行したいPHPファイルのあるディレクトリに移動して、「php ファイル名.php」で実行できる。
が!!!だ、Gallery2のモジュールのひな形を作成するcreate-module.phpをこの方法で実行すると、下記のメッセージが出る。
C:\xampp\htdocs\gallery2\lib\tools\creator>php create-module.php
You must run this from the gallery2 directory
しかたないので、C:\xampp\htdocs\gallery2まで移動してから実行したらうまくいった!
C:\xampp\htdocs\gallery2>php lib\tools\creator\create-module.php
What is the name of your module? [Hello World] (ここはモジュール名ほげほげー)
What is the id of your module? [wifigadgets] (ここはモジュールIDほげほげー)
* * * * * * * * * * * * * * * * * * * * * * * * * *
Your module is ready! You must build it by doing:
cd modules/(ここはモジュールIDほげほげー)/classes
make && make clean
Then you can go to the Site Admin -> Modules
page and install and activate your module!
* * * * * * * * * * * * * * * * * * * * * * * * * *
コメントなし »
インストールしようとしたら、SAFE_MODEのためrealpathでエラーがいっぱい。。。
ここのサイト→(coreserverでcakephp 1.2を使う)
を参考に/cake/libs/configure.phpに追記したら、エラーは回避できた。
コメントなし »
ZendFrameworkのZend_Pdf(http://framework.zend.com/manual/ja/zend.pdf.html)
を、試してみました。
ところが、日本語が表示されない。
こちらのサイト→(Zend_Pdf で日本語が使えるようになってた)
を教えてもらって、ここに書いているようにフォントファイルをダウンロードして配置したら、ちゃんと日本語が使えました!
2008/08/05現在、ZendFrameworkのZend_Pdfで利用できるデフォルトのフォント指定は、下記のもののみでした。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| const FONT_COURIER = 'Courier';
const FONT_COURIER_BOLD = 'Courier-Bold';
const FONT_COURIER_OBLIQUE = 'Courier-Oblique';
const FONT_COURIER_ITALIC = 'Courier-Oblique';
const FONT_COURIER_BOLD_OBLIQUE = 'Courier-BoldOblique';
const FONT_COURIER_BOLD_ITALIC = 'Courier-BoldOblique';
const FONT_HELVETICA = 'Helvetica';
const FONT_HELVETICA_BOLD = 'Helvetica-Bold';
const FONT_HELVETICA_OBLIQUE = 'Helvetica-Oblique';
const FONT_HELVETICA_ITALIC = 'Helvetica-Oblique';
const FONT_HELVETICA_BOLD_OBLIQUE = 'Helvetica-BoldOblique';
const FONT_HELVETICA_BOLD_ITALIC = 'Helvetica-BoldOblique';
const FONT_SYMBOL = 'Symbol';
const FONT_TIMES_ROMAN = 'Times-Roman';
const FONT_TIMES = 'Times-Roman';
const FONT_TIMES_BOLD = 'Times-Bold';
const FONT_TIMES_ITALIC = 'Times-Italic';
const FONT_TIMES_BOLD_ITALIC = 'Times-BoldItalic';
const FONT_ZAPFDINGBATS = 'ZapfDingbats'; |
コメントなし »
C-f 一文字次に進む
C-b 一文字前に戻る
M-f 一単語次に進む
M-b 一単語前に戻る
C-n 次の行に移動
C-p 前の行に移動
C-a 行頭に移動
C-e 行末に移動
M-a 文頭に移動
M-e 文末に移動
M-< ファイルの先頭に移動する
M-> ファイルの末尾に移動する
コメントなし »
<Delback> カーソルの直前の文字を削除(delete)
C-d カーソルのある文字を削除(delete)
M-<Delback> カーソルの直前の単語を消去(kill)
M-d カーソル位置の後ろにある単語を消去(kill)
C-k カーソル位置から行末までを消去(kill)
M-k カーソル位置から文末までを消去(kill)
コメントなし »
こんなに設定がいっぱいあります。
感動した。。。
http://www.onehertz.com/portfolio/wordpress/mandigo/

【追記です】
CORESERVERではeval関数でのエラーが出てしまうため、CSSが適用されたりされなかったり。
突然文字が大きくなったりします。
そのような場合は、
/wp-content/themes/mandigo/style.css.php
の26行目にあるevalの前に「@」をつけると、とりあえず文字が不安定に大きくなることは避けられます。
コメントなし »