2009-01-01から1年間の記事一覧

brunchesからのmerge

svn log --verbose --stop-on-copy http://…/…/branches/brunches_1.x.xで、自分がbrunchesを作成した時のリビジョンを知る svn switch http://…/…/trunkで、コミット先をtrunkに変える。その際、trunkのファイルがいっぱい落とされてくるが無視。 $ svn st …

日付表示

<{$startdate|date_format:"%Y年%m月%d日"}> <{$starttime|date_format:"%H:%M:%S"}> <{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}>日付を表記する形式をパイプで指定する。

vim:undoしすぎた

Ctrl+rでOKおk

mysqldump

mysqldump 'DB名' -u 'ユーザ名' --no-create-info -c 'テーブル名' > 'ダンプファイル名' no-create-info オプションでcreate文を含まない、データのみのダンプファイルがとれる。 いい加減覚えてくれ。俺。

smartyの文字列連結

$hoge|cat:"さん"みたいな。|cat:はPHPのピリオド。

auto_incrementの値をゼロに戻す

alter table テーブル名 auto_increment=1;これでオートインクリメントの次の挿入を1からに出来るよ。

【Linux】USBをマウントする。

linuxでUSBを扱うときはターミナルでマウントしなければならない。通常は/mntとか/mediaの下にディレクトリを作ってそこにマウントさせる。 デバイスファイルの場所はdmsgやら、ls -la /dev/*なりで探す。 $ mkdir /mnt/usb $ mount -t vfat /dev/sdb1 /mnt/…

LightBox

設置方法は、読み込む側のhtmlファイルのmeta部分に、 <link rel="stylesheet" href="http://example.com/wp-content/js/shadowbox/css/shadowbox.css" type="text/css" /> <script type="text/javascript" src="http://example.com/js/jquery.js"></script> </link>

初 jQuery!

初めてjQueryを触ってみた。jQueryはJSのライブラリで、短いコードで簡単に記述することができる。今回は覚えてなきゃいけないことを記します。 解釈もまだまだへぼなのでいろいろ突っ込んでくれるとありがたいです。 そうしないと理解ができないので・・・…

任意の日と今日までの期間を求める。

$pass_day = strtotime('2004-11-01'); $current_day = strtotime(date('Ymd')); $diff = ($current_day-$pass_day); $diffYM = (date("Y",$diff ) - 1970) . "年" . (date("m",$diff ) - 1).'ヶ月';(*) 表示結果は string '4年10ヶ月' (length=12)また、(*)…

EthnaのVAR_TYPE_SELECT

<{form_input emptyoption='選択してください' name="prefid"}>と入れると、選択肢の一番最初に'選択してください'の選択肢が生まれる。

Aug25:外部制約を外す

外部制約のかかっているカラム(外部と親子関係を持つカラム)を削除しようとすると。 ERROR 1025 (HY000): Error on rename of...(errno: 150)と出る。削除ができないようにロックがかかっているらしい。 show create table [テーブル名]で、 CONSTRAINT `own…

Aug21:Ethna的な・・・

■フォームの定義の変更アクションフォーム定義を引き継いだクラスで、 $this->af->form['test']['default'] = $hoge;のようにすると、そのアクションフォームの定義の変更ができる。変数を代入することもできるので便利。また、setAppした値をクラスで引き継…

Aug19:誕生日から年代を出す。

久し振りの更新。さて、誕生日から年齢を出し、さらに年代までを出したい時は、 1 $birthday = $userdata['birthday']; 2 $timestamp = strtotime($birthday); 3 $new = date("Ymd",$timestamp); 4 5 $age = round(((date("Ymd")-$new)/10000),-1); 6 $age =…

Aug10:SVNもろもろ

ブランチの作成 $ svn copy コピー元 コピー先(test←名前もここで決める) ローカルの反映先の変更 ローカルのリポジトリコピーの中で、 $ svn switch 反映先URLとする。ローカルを指定のリビジョンに戻したいときには、リビジョンを指定してあげて、先ほどの…

Aug7:トリッキーな・・・

今週から実案件に突入!右も左もまたわからなくなったので、とりあえずなんでも先輩に確認する。やることはあんまり変わらんがwクエリを投げてDBから取ってきたオブジェクト変数を一行ずつとってくる。その時に次のレコードのuseridとcanpainが一緒だったら…

Aug5;get_class

あるクラスがどういうクラスかを知りたい時は、 echo get_class($this); echo '<br>'; echo get_class($this->af);と打ってみる。結果は、 Elixir_PagerManager Elixir_Form_Pagerへぇ、便利。

Aug4:%とか嫌いだよ。

SQLのあいまい検索で like %******%とかするけれども、この****の先頭とか中盤に%があった場合、非常にややこしい。まぁ、****の値が一定値だったらいいんだけども、入力フォームとかで入ってくる値なら本当勘弁だ。 でもまぁ、以下のスクリプトでおk。 if(…

Aug3:社内用フレームワーク(ちょっと裏ワザ的なエラー)

firebugでhiddenの値を書き換えて(空とかにしてしまう)確認画面から完了画面に行くと、普通に完了画面にいけてしまう。これはダメだ。完了画面に親クラス(確認画面)のprepare()を引き継げば書く内容も少なくて済む。親クラスのメソッドの引き継ぎ方は、PHPの…

Jul31(3):社内用フレームワーク(郵便番号編)

郵便番号はテキストボックス2つで1グループになるので、その設定を行う。 required_keyというのがあって、これはグループ内配列のrequiredなキーを指定するので、今回は2つともそうだから、アクションフォームの定義は、 'zip' => array( 'type' => array(VA…

Jul31(2):社内用フレームワーク(データをDBに入れる。)

mysqlにデータを入れる。この作業は別途managerを用いて行うので、新たなmanagerを作り、関数を作る。関数は一般性を持たせるので、フォーム値の値をそのまま持ってきたりしない。 SubmitManager class Elixir_SubmitManager extends Ethna_AppManager { pub…

Jul31:社内用フレームワーク(viewについて)

viewはページの表示にかかわることを設定するクラス。今までなんでもかんでもアクションクラスとテンプレートだけで終わらせてきたが、viewに仕事を割り振ってあげないとさすがにかわいそうなので、確認ページで日本語表記に変換する項目の設定をviewで行う…

Jul30(2):社内用フレームワーク(フォーム値の補完)

フォーム画面→管理画面で値を渡す時にはhiddenを使うが、すべてのフォームの値で書くのが面倒・・・こんな時は、 <{form_hidden_all}>とhiddenタグを返したいところで入力することにより、アクションフォームで定義されたフォームのnameと入力されたvalueの…

Jul30:社内用フレームワーク(複合チェック)

あぁ、Ethna難しい。本当に。 今回は複合チェックだ。今回の条件は、 「チェックボックスの「その他」にチェックがなされてる場合にセレクトボックスが必須になる。」 という条件。複合チェックの場合は、varidatorを実行するコマンド $this->af->validate()…

Jul29:社内用フレームワーク(trim編)

Ethnaでは、アクションフォームの定義の所に 'filter' => 'ltrim',とあるが、これはEthna_ActionFormの function _filter_ltrim($value) { return ltrim($value); }という関数が入ったクラスを継承しているから使えるのである。今、半角カナ、およびひらがな…

Jul28:社内用フレームワーク(フォーム→確認画面,エラーメッセージ)

画面遷移に関して var $form = array( 'lastname' => array( 'type' => VAR_TYPE_STRING, 'form_type' => FORM_TYPE_TEXT, 'name' => 'lastname', // // Validator (executes Validator by written order.) 'required' => true, 'min' => 1, 'max' => 50, 'r…

Jul27(2):社内用フレームワーク(フォーム→確認画面)

複数選択のチェックボックスなのに、値が何やっても一つしか渡されてこない。イラつく。さて、何がいけないのかというと、アクションフォームを指定する時に、複数選択の場合は'type'の宣言をarrayにしてあげなければならない。どういうことかというと、趣味…

jul27(2):社内用フレームワーク構築(2)(フォーム→確認画面)

フォームで入力した値が確認画面にちゃんと渡されているのか調べる。action/Confirm.phpで print $this->af->get("lastname");出てきた値はNULLだった。残念。何がダメだったかというと、action/Form.phpのアクションフォーム を引き継いでないかららしい。 …

Jul23:社内用フレームワーク構築(TOP→フォーム)

まず、TOP画面を表示させる。action,view,テンプレートを作って、htdocs/index.phpは index.tplのformへの遷移は、 <a href="?action_form=1"><font size="2">さっそく応募する</font></a>とする。どのアクションを呼び出すかはここで決まる。んで、app/actio…

Jul22:社内用フレームワークのエラー

バーチャルホストに社内用フレームワークのhtdocsを設定したところ。 Internal Server Error エラーログを見てみると、 /.htaccess: php_value not allowed hereとか書いてあった。PHPがこのディレクトリで使えないらしい。とりあえず.htaccessで調べてみる…