FORMのリロード対策2

PHP

2.セッション変数に「未処理」をあらわす値をセットして対応 最初にフォームの入力画面が表示されたときに、 セッション変数に「未処理」をあらわす値をセットする。 1. $_SESSION['execute'] = false; POSTされてメールを送信した後に 1. $_SESSION['execut…

FORMのリロード対策1

PHP

トランザクショントークンで対応 1.入力フォーム処理 // トークン生成 $_SESSION['token'] = md5(uniqid().mt_rand()); $token = htmlspecialchars($_SESSION['token'], ENT_QUOTES); // 中略 <form action="./result.php" method="POST"> <input type="submit" name="send" value="送信"> <input type="hidden" name="token" value="$token"> </form> 2.送信結果…

キャリア判別方法

PHP

携帯でキャリアを調べる方法 $agent = $_SERVER['HTTP_USER_AGENT'];if(ereg("^DoCoMo", $agent)){ echo "DOCOMO"; }else if(ereg("^J-PHONE|^Vodafone|^SoftBank", $agent)){ echo "SOFT BANK"; }else if(ereg("^UP.Browser|^KDDI", $agent)){ echo "AU"; }

ポップアップ画面を閉じるタイミングで、メイン画面を更新

<FORM> <INPUT TYPE=BUTTON VALUE='閉じる' onClick="window.opener.location.reload();self.close();"> </FORM>[更新] window.opener.location.reload(); [閉じる] self.close();

SQLの時間の扱いかたの基礎

SQL

レコードを追加する際に INSERT INTO 商品テーブル (商品コード,商品名,登録日時) VALUES(1,test,NOW());とし時間をNOW()で入れた場合、 SELECT 商品名,EXTRACT(EPOCH FROM 登録日時) AS 登録日時 FROM 商品テーブル WHERE 商品コード = 1;

SQLでidの最大をとる方法

SQL

掲示板などで、よく使うこと INSERT文で現在のテーブルの最大値を取ってくる方法 1.SELECT MAX(id) as id FROM テーブル名 2.SELECT id as id FROM テーブル名 order by desc limit 1MAXを使った場合レコードが1件も無い場合はNULLになる。 NULLが帰っ…

vimでタブを使う

VI

vim -p file1 file2 ...切替はgt, gTで行ったりきたり

firefoxの役立つアドオン集

会社で入れていたfirefoxのアドオンを紹介 他にお勧めあったらおしえてください。 ・colorzilla …スポイトなど ★★★ ・Firebug …開発ツール ★★★ ・Firefox Showcase …タブ一覧表示 ★ ・FireGestures …マウスジェスチャー ★★★ ・FireMobileSimulator …開発ツー…

symfonyで運営中のDBにaddカラムする

運営中のサイトにカラム追加する場合 subversionなどでソース管理している場合、 テスト環境では、 1.直接カラム追加 2.schema.ymlにカラム追加 3.symfony propel-build-modelこの手順で作業する。 その後本番環境では、 1.直接カラム追加 2.テストソースの…

symfonyでコンポーネントを使ってみる

コンポーネントとは パーシャルで表示する内容にデータの抽出やソートなど といったロジックが必要な場合、アクションをパーシャルに 添える事ができる。actionの記述の仕方は、 呼び出しは include_component('モジュール名', 'パーシャル名')

view.ymlでスタイルシートのmediaについて指定する

スタイルシートの読み込み指定はview.ymlに指定してやればよい。 stylesheets: [ base: { media: print }]mediaを指定しないとdefaultではviewではscreenのみが記述された状態になる。 そこで、printを追加するのだが、 stylesheets: [ base: { media: scree…

jqueryをでcheckboxやradioboxを指定する場合

jqueryでページ内のcheckboxが複数ある場合下のような対応をとっていた、ページの最後にある場合をlastとして指定していた if (j$('input[type=checkbox]:last').attr('checked')) { if(checkAllForm()){ j$("#regist").submit(); } }正しくはcheckboxのname…

同一のカラムに複数条件を使うPropel

SQL

SQLで SELECT * FROM product WHERE created_at >= "2009-10-01" AND created_at <= "2009-10-31"これをpropelに置き換えると、 $c = new Criteria(); $c->add(productPeer::CREATED_AT, ”2009-10-01”, Criteria::GREATER_EQUAL); $c->addAnd(productPeer::C…

vi 検索

VI

検索文字列を下方向に検索 /文字列文字列を上方向に検索 ?文字列下方向に次検索 n上方向に次検索 N選択した単語を検索 shift+*

netstatコマンド

開いているポートを確認するには netstat -tlnp

syncコマンドでリモートホストにバックアップ

「/home/testuser/senddir」というディレクトリの内容を リモート・ホスト(IPアドレス)の「/home/remoteuser/remotebak」というディレクトリに」バックアップする場合。 rsync -av -e ssh /home/testuser/senddir/ remoteuser@IPアドレス: /home/remoteuse…

パス補完

VI

[ctrl] + xf /var/w ←ここでコマンドを打つ /var/www/

symfonyでセッションを使う

以下のようになる public function executeIndexSuccess() { $username= $this->getRequestParameter('username'); $this->getUser()->setAttribute('username', $username); }アクションaction.class.php public function executeIndex() { $this->setFlash…

WEBデザイン収集

http://anjo.dekiteharu.jp/ http://www.webdesignclip.com/ http://exo.jp/keypersonq/ http://www.ikesai.com/ http://bm.straightline.jp/

wheelグループに追加

wheelグループ UNIX系システム上でスーパーユーザー(root)特権を 得ることのできるユーザーの属するグループの名称。UNIX系システムでは一般ユーザーがスーパーユーザー権限を得るためにsuコマンドを使用するが, 何らセキュリティの対処が行われていない…

ネットマスクについて

IPアドレスを設定するときには必ず、いっしょにネットマスクを指定する必要がある。ネットマスク IPアドレスと同じ4バイト、255までの4つの数字を ドット”.”で区切ったものであらわされる。 しかし、通常使われる数字は、0 か 255 で、 255.255.255.0 …

自宅にCentOS導入

ルータが3000円で手に入ったので早速 ココを参考に自宅サーバを構築してみた。 http://centossrv.com/ここでIPアドレスのおさらい、 ネットワーク番号とホスト番号の境がどこにあるかを 決めているのは、IPアドレスの最初の数字。 最初の数字 例 1-127 最…

yamlから取得した値とDBから取得した値をoption_for_select、objects_for_selectで表示する

1.DBテーブルにジャンルなどを数字でもち、YAMLに文字列もつデータを文字列でセレクトボックスに表示させたいとき。 または 2.JOINしたテーブルからIDに一致する文字列をひっぱてセレクトボックスに表示させたいとき。やりたことはなんとなくわかるけど…

管理画面のデザインとユーザビリティ

管理画面は直接クライアントが使うものなので、 デザイン性が高く、ユーザービリティの良いものを こちらで紹介のUIは使えるかも http://www.cssjuice.com/16-sortable-table-techniques/

ページ内で簡単にスクロールさせる方法

jQuery 1.2 以降だと scrollTop(と scrollLeft)という疑似スタイルが利用できる <html> <body> <p> blah, blah, blah, ... blah, blah, blah, ... </p> <p> <a href="#" id="link_to_top">ページの先頭へ</a> </p> </body> </html>「ページの先頭へ」というリンクをクリックしたときに,スムーズにスクロールしたい場合 $(function ()…

REDMINEのインストール

Redmineは、Ruby on Railsで記述された、オープンソース(GPL)のプロジェクト管理ソフトウェアで、業務のやり取りにもってこいです。 運用フローなど確立していない会社にはよい。 http://www.powerdee.com/doku.php?id=homeserver:redmine http://redmine.jp…

PostgreSQLの以外に知らない基本操作4

■PostgreSQL(データベース)のバックアップ(pg_dumpの使用) pg_dumpコマンドを使用したPostgreSQLデータベースのバックアップ方法。 C:>pg_dump -Fc -b -U userName -f 出力ファイル名 dbName Password: [-Uで指定した接続ユーザのパスワードを入力] ファ…

PostgreSQLの以外に知らない基本操作3

■PostgreSQLのファイルからSQL一括実行(pdqlの使用) 指定したファイル読み込んで実行するコマンドオプションを説明。このファイルにcreate文などを記述すればテーブル作成やマスタデータの登録を一括で行なえる。 C:>psql -f test.sql -U userName dbName …

PostgreSQLの以外に知らない基本操作2

■PostgreSQLのデータベースの作成(createdbの使用) PostgreSQLにデータベースをcreatedbコマンドを使用して作成。 C:>createdb -E EUC-JP -O userName -U userName データベース名 Password: [-Oで指定したオーナのパスワードを入力] CREATE DATABASEオプ…

PostgreSQLの以外に知らない基本操作1

■PostgreSQLのユーザ作成 PostgreSQLにユーザ作成するのはスーパーユーザで行う。 C:>createuser -a -d -U postgres -P ユーザー名 Enter password for new role: [作成するユーザのパスワードを入力] Enter it again: [作成するユーザのパスワードを再入力]…