タブレット用スタイラスペンと書籍
iPadで図や絵を書きたいと思い、Amazonで購入。2000円弱だった。
あと、ビックカメラの商品券が残ってたので、書籍を2冊購入した。商品券でお釣りも出た。
Wacom iPad/IPad2/iPhone4対応 描画、ポインティングに最適なタッチペン Bamboo Stylus CS-100/K0
posted with amazlet at 12.01.12
知識ゼロから始めるLinuxサーバーの作り方 (日経BPパソコンベストムック)
posted with amazlet at 12.01.12
MAMPにWordPressをインストール
WordPressのテンプレート使ったページを作りたいと思っており、まずはローカルで環境作成した。
"mamp wordpress"で検索し、下記サイトを参考にさせていただいた。
http://www.studio-fix.com/blog/kaoru/2010/01/27/post875/
書籍メモ
"よくわかるPHPの教科書"のサンプルを打ちながらとったメモ。p223まで。
PHPとDBの連携について学習(Part5 practice1)。PHPでDBへのデータ追加・読み込み・更新・削除(CRUD)をひと通りやった。
- DB接続でやる最初の処理セット
- レコードセットを取得する:$recordSet = mysql_query('SELECT * FROM my_items');
- レコードセットから1レコード取り出す:$data = mysql_fetch_assoc($recordSet);
- mysql_fetch_assocは最後までデータを取り出し終わるとfalseを返す
- その他レコード取得関数のリファレンス:http://php.net/manual/ja/book.mysql.php
- フォームのデータを使用するときは直接使用せず、mysql_real_escape_stringを使う:mysql_real_escape_string($_POST['maker_id'])
- SQLインジェクション対策。不正な文字列のサニタイズ(sanitize):無害化をやってくれる。
- 共通処理はくくりだして読み込む:require('dbconnect.php');
初秋
買ったけど読んでなかった本。これから読む。
初秋 (ハヤカワ・ミステリ文庫―スペンサー・シリーズ)
posted with amazlet at 12.01.10
書籍メモ
"よくわかるPHPの教科書"のサンプルを打ちながらとったメモ。p186まで。
今日はデータベース。ブラウザからphpMyAdminを操作した。
ORDER BYとLEFT JOIN(外部結合)について、そういうものかという認識で、使いこなす自信がない。
- オートインクリメントはプライマリキーに設定したフィールドにのみ利用可能
- レコードを削除し、再度挿入した際、オートインクリメントでは新しい値が設定される(値の使い回しはされない)
- 不等号は<>:SELECT * FROM `my_items` WHERE id<>1;
- 文章の部分検索はLIKE:SELECT * FROM `my_items` WHERE keyword LIKE '%甘い%';
- データの並び替えはORDER BY:SELECT * FROM `my_items` ORDER BY id ASC;
- フィールドは相対情報よりも絶対情報でつくるようにする
- "ランキング"より、"売上数"や"点数"といったフィールドをつくる
- 参照時にORDER BYで並び替える→相対情報がわかる
- 時間を表す型にDATETIME型とTIMESTAMP型がある
- XX毎に集計するのはGROUP BY:SELECT item_id, SUM(count) FROM carts GROUP BY item_id;
- 内部結合は両方のテーブルにデータが存在しないと結合されずデータが表示されない。
- 外部結合は一方のテーブルにデータが存在すればデータが表示される。SELECT i.item_name, SUM(c.count) FROM my_items i LEFT JOIN carts c ON i.id=c.item_id GROUP BY i.id;
- 重複をなくすにはDISTINCT:SELECT DISTINCT item_id FROM carts;
- 間を示すにはBETWEEN
- 複数の値を示すにはIN
- 件数を制限するにはLIMIT
- フィールドに別名を付けるにはAS
- バックアップ:データベーススペース選択→エクスポートタブ選択→Save as fileにチェックしてGo→.sqlファイルがDownloadフォルダに出来る
書籍メモ
"よくわかるPHPの教科書"のサンプルを打ちながら&調べながらとったメモ。p129まで。
- ファイルアップロード
- フォームの属性にenctypeを付ける。enctype="multipart/form-data"
- methodは必ずpost
- データは$_FILES['フォームのname属性値']に格納される
- ファイル名:$_FILES['フォームのname属性値']['name']
- アップロードしたファイル:$_FILES['フォームのname属性値']['tmp_name']
- 上記テンポラリファイルを移動する move_uploaded_file($_FILES['フォームのname属性値']['tmp_name'], $filepath);
- 部分文字列を取得する $ext = substr($file['name'], -3);
- ファイルに書き込む $success = file_put_contents('./news_data/news.txt', '2012-01-08 Hello, world!');
- ディレクトリが無かったらwarning出る
- ファイルが無かったら新規作成する
- 通常はドキュメントルートよりも外に保存する。ブラウザでアクセス可能なので。
- ファイルから読み込む $news = file_get_contents('./news_data/news.txt');
- xmlを読み込む $xmlTree = simplexml_load_file('http://d.hatena.ne.jp/yamashina/rss');
- 要素の出力 foreach ($xmlTree->item as $item) { print('' . $item->title . '');}
- MAMPのphpMyAdminでデータベース操作する
書籍メモ
"よくわかるPHPの教科書"のサンプルを打ちながら&調べながらとったメモ。p108まで。
- ヘッダ情報を出力する
- 別のページにジャンプする header('Location: http://d.hatena.ne.jp/yamashina/');
- ヘッダ情報はページの最初に出す。途中だとエラーになる。
- リファレンス http://www.php.net/manual/ja/function.header.php
- Cookieで入力情報を記憶する
- セッションでWebブラウザを閉じるまでデータを保持する
- セッションを使うページでsession_start()が必要
- $_SESSIONに保存する
- リファレンス http://www.php.net/manual/ja/book.session.php
- セッション情報を消すときはsession_unset
- Webサーバにセッション情報が保存される
- クライアントにはセッションIDを発行し、Cookieに保存される
- セキュリティリスクにセッションハイジャックというのがあるみたい。
セッションIDの照合とかのチェックは誰がどうやってやってる?
まだよくわかってない。自分がサービスを実装するときに勉強する。