macportsでupdateする方法
MongoDBの安全な?起動終了方法
MongoDBをctrl+dで消してしまい、再起動時にエラーをはいてなかなかエラーが治らず、俺が吐きそうになったのでメモ。
- Mongod起動
$ mongod --nojournal --noprealloc --dbpath <任意のディレクトリ(log)>
- クライアントから接続しmongodbを終了
$ mongo
$ use admin
$ db.shutdownServer();
$ quit();
macプレビューでスクロール移動をvim風に行う
電子書籍をmacで見る際に標準で付いているプレビューアプリを使っていますが、スクロール移動する為にトラックパッドまで手を持っていくのが面倒
Appleに電話してプレビューの移動をキーボードでできませんかお?ってシニアアドバイザー?に相談しても解決せず(´・ω・`)<アローキーも面倒
なので、mac usKeyユーザー必須の神アプリ keyremap4macbookのCustom Setting を使い設定します。
private.xmlに下記をコピペ
SEQUELPRO
com.sequelpro.SequelPro
My keymappings
C-h to Backspace (SequelPro)
private.app_sequelpro_control_h_to_backspace
SEQUELPRO
--KeyToKey-- KeyCode::H, ModifierFlag::CONTROL_L, KeyCode::DELETE
Vim in Preview
private.app_preview_vimium_in_preview
PREVIEW
__KeyToKey__ KeyCode::J, KeyCode::CURSOR_DOWN
__KeyToKey__ KeyCode::K, KeyCode::CURSOR_UP
__KeyToKey__ KeyCode::H, KeyCode::CURSOR_LEFT
__KeyToKey__ KeyCode::L, KeyCode::CURSOR_RIGHT
ついでにmysqlのguiクライアント sequel pro のキーバインドも変更しています。(ctrl+hでbackspace)
要らない方はvim in Previewあたりから
これで「J」は下、「K」は上、「H」は左「L」は右に移動できる!
仕事でwindows使いますが、XKeymacsでキーバインド変えてます。
エクセルセルの移動が楽になりますよ。
でもctrl+pで印刷www、ctrl+fで検索が使えないのがイタイ(>_<)
Sublime Text 2で素早くブラウザプレビューする方法
港で噂のSublimeText2ダウンロードして放置していましたが、久々にさわってみました。
Coda2がネイティブになっている者からするとリアルタイムプレビューできないのはキツイす..><..
SublimeText2にもありました!(似たようなの)
「Browser Refresh」
ショートカットでブラウザを更新してくれます。
Package Controlから検索してみてください。
(Package Controlを入れてないかたは検索を)
デフォルトだと、macでは「cmd+shift+r」でブラウザが更新されます。
試したら他のパッケージとバッティング?してしまって動きませんでした。
なので、ショートカットを変えたところ良い感じに!
「command+s」でsaveしつつbackgroundでブラウザを更新してくれます。(゚∀゚ノ)ノ
設定方法
設定内容は↓ツールバーの「SublimeText2」→「Preferences」→「Package Settings」→「Browser Refresh」→「Key Bindings - Default」から設定。
(更新するブラウザはchromeにしてます)
json?
ところでjsonファイルってなんだろJavaScript Object Notation - Wikipedia
「[]」で囲まれてるし、ネストしてるし、、、ぅ
オブジェクトリテラルとJSON:続JavaScriptのオブジェクトについて - builder by ZDNet Japan
わかんねー!寝るか!
みなさんも便利なパッケージ、機能、ショートカットあったら教えてくださいね♪(・ω<)
Coda2 と Lolipopのサイト設定方法
赤い部分はロリポップの契約メールをみながら記入です!
SQL文 メモ
SELECT * FROM items; //データの一覧を表示する INSERT INTO items SET ID=100, name='商品100'; //デーブルitemsにid=100,name=商品100を挿入する CREATE TABLE my_items (id INT,item_name TEXT,price INT); //テーブルの作成 INSERT INTO my_items SET id=1,item_name='いちご', price=200; //テーブルmy_itemsにidを1item_nameにいちごを挿入する UPDATE my_items SET price=180 WHERE id=1; //データの変更 WHEREでidの指定 priceを180に変更 DELETE FROM my_items WHERE id=1; //テーブルmy_itemsのid 1を削除する SELECT id,item_name FROM my_items WHERE id=1; //データの検索 SELECT * FROM my_items WHERE id=1; //データの検索 フィールド名の指定はなし SELECT * FROM my_items WHERE price=180; //フィールドmy_itemsの中からpriceが180のものを表示する SELECT * FROM my_items WHERE price<180; //フィールドmy_itemsの中からpriceが180未満のものを表示する SELECT * FROM my_items WHERE id<>1; //フィールドmy_itemsの中からid=1以外を表示する SELECT * FROM my_items WHERE keyword LIKE '%甘い%'; //「甘い」が入っているkeywordを表示する SELECT * FROM my_items WHERE keyword LIKE '赤い%'; //keywordの先頭が「赤い」になっているものを表示する(前方一致) SELECT * FROM my_items WHERE price>=50 AND price<150; //50以上で150未満のものを表示する(かつ、さらにといった条件) SELECT * FROM my_items WHERE id=1 OR id=3; //idが1または3を表示する SELECT * FROM my_items WHERE (id=1 OR id=3) AND price<150 AND keyword LIKE '%甘い%'; //idが1または3で、150円未満でさらに「甘い」が含まれる商品を表示 SELECT * FROM my_items ORDER BY id ASC; //idを小さい順に並べる(ASCは標準なので省略できる) SELECT * FROM my_items ORDER BY id DESC; //idを大きい順に並べる SELECT * FROM my_items WHERE price<=180 ORDER BY price; //priceが180円以下のものを安い順に並べる UPDATE my_items SET created = '2012-07-01' WHERE id=1; //id=1のcreatedに日付を入れる UPDATE my_items SET created = NOW() WHERE id=2; //NOW() : 現在の日付と時刻を取得する SELECT SUM(price) FROM my_items; //すべてのpriceを合計した値が表示される SELECT MAX(price) FROM my_items; //最も高い商品を表示する SELECT MIN(price) FROM my_items; //最も低い商品を表示する SELECT COUNT(id) FROM my_items; //ヒットしたデータの件数 SELECT AVG(price) FROM my_items; //price の平均値を算出する P164 /////////////////// P174 SELECT item_id, SUM(count) FROM carts GROUP BY item_id; //個別の集計(GROUP BY はどの商品か表示させるため) SELECT i.item_name,SUM(c.count) FROM my_items i,carts c WHERE i.id=c.item_id GROUP BY c.item_id; //リレーションを使って商品名と集計を表示する SELECT i.item_name,SUM(count) FROM my_items i LEFT JOIN carts c ON i.id=c.item_id GROUP BY i.id; //外部結合 書式[SELECT … FROM テーブル1 LEFT JOIN テーブル2 ON 結合の条件 WHERE …] DISTINCT // 重複をなくす 例 : SELECT DISTINCT item_id FROM carts; SELECT * FROM my_items WHERE price BETWEEN 50 AND 149; // BETWEENは「>=」と同じ意味? SELECT * FROM my_items WHERE id IN(1,3); //複数の値を一気に指定できる「IN」 SELECT * FROM carts LIMIT 2; //件数の制限「IN」 SELECT * FROM carts LIMIT 1,2; //カンマ区切りで始まりの位置を指定 SELECT i.item_name,SUM(c.count) AS sales_count FROM my_items i,carts c WHERE i.id=c.item_id GROUP BY c.item_id; //「AS」SUM(c.count)のフィールド名を変更している
PHP : Cookie IDを保存する
isset : 変数がセットされていること、そして NULL でないことを検査する
empty : 変数が空であるかどうかを検査する
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <?php if(isset($_COOKIE['my_id'])){ //■1 $myId = $_COOKIE['my_id']; //■2 } else { $myId = ''; } ?> <form action="sample17.php" method="post"> <dl> <dt>ID</dt> <dd> <input type="text" name="my_id" id="my_id" value="<?php echo $myId; ?>"> </dd> <dt>パスワード</dt> <dd> <input type="password" name="password" id="password"> </dd> <dt>IDの保存</dt> </dl> <p><input type="checkbox" name="save" id="save" value="on"> <label for="save">IDを保存する</label></p> <input type="submit" value="送信する"> </form> </body> </html>
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <?php $my_Id = $_POST['my_id']; $password = $_POST['password']; $save = $_POST['save']; //cookieに保存 if($save == 'on') { setcookie('my_id',$myId,time() + 60 * 60 * 24 * 14); //■3 $message = 'ログイン情報を記録しました'; } else { setcookie('my_id',''); //■4 一番目のパラメータだけの指定は内容を削除する $message = '記録しませんでした'; } ?> <p><?php echo $message; ?></p> <p><a href="./sample17_input.php">戻る</a></p> </body> </html>