書籍メモ

"よくわかるPHPの教科書"のサンプルを打ちながらとったメモ。p301まで(終了)
ライブラリ:PEARの使い方について、ケータイ向けページの振り分けを例に学習。

  • PHP Extension and Application Repositoryの略
  • 入れたパッケージ
    • PEAR Base System ver.1.9.4
    • Net_UserAgent_Mobile ver.1.0.0
  • PEARパッケージのパスを追加:set_include_path(get_include_path() . PATH_SEPARATOR . './PEAR');
  • Net_UserAgent_Mobileをインクルード:require('Net/UserAgent/Mobile.php');
  • Firefoxでケータイ端末をシミュレートするアドオン:FireMobileMisulator


フレームワークCakePHPについて、ひとこと掲示板を移植しながら学習。

  • ダウンロードしたのは、2.0.5 安定版
  • 解凍したフォルダを"cake"にリネームして、htdocsに移動させる
  • http://localhost:8888/cake/にアクセスすると、リリースノート&設定指示が表示される
  • /cake/app/Config/core.phpのSecurity.saltとSecurity.cipherSeedを編集する
  • /cake/app/Config/database.php.defaultをdatabase.phpにリネームし、$default配列を変更する
  • まだないURLにアクセスすると、次にやること(Error)が表示される:http://localhost:8888/cake/posts
    • Controllerをつくる:/cake/app/Controller/PostsController.php
    • Viewをつくる:/cake/app/View/Posts/index.ctp
  • 見栄えを変える場合はレイアウトファイルを作る:/cake/app/View/Layouts/default.ctp
  • URLを変更する場合はルーティングファイルを変更する:/cake/app/Config/routes.php
  • CakePHPは、データベースのフィールド名に決まりがあったり、テーブル名は英単語の複数形にするなどの決まりがある

ドコモ料金プラン変更

タイプSS バリュー+パケホーダイダブル2
→タイプシンプル バリュー+パケホーダイシンプル

パケホーダイダブル2から変更することで月々サポートが打ち切られるが、パケホーダイダブル2の月額最低料金が2100円と月々サポートの1100円より高いから変えた。

基本プランがタイプシンプルの場合だけ、パケホーダイシンプルが適用(タイプシンプル以外だとパケホーダイダブルが適用)されるので、基本プランも変更した。

タイプシンプルは基本料金に無料通話分が含まれず、節約になるかわからないけど、しばらく使ってみてから確認しようと思う。

ブログエディタ:MarsEdit

おすすめエントリーを見て、体験版をインストールした。

ブログアドレスを入れたら設定を読み込んでくれるみたいだけど、はてなダイアリーは対応してなかった。
30日間試用できるので触ろう。

書籍メモ

"よくわかるPHPの教科書"のサンプルを打ちながらとったメモ。p277まで。
twitter掲示板の作成(Part5 practice2)の続き。

  • 共通処理は関数にまとめる
    • function h($value) { return htmlspecialchars($value, ENT_QUOTES, 'UTF-8'); }
  • 正規表現で、URLが含まれる投稿にリンクを張る(関数を作る)
    • function makeLink($value) { return mb_ereg_replace("URLパターン(正規表現)", "リンク貼った置換後の文字列", $value); }

twitter掲示板がひと通り終わったけど、こうやってつくるんやというだけで、活用するレベルには至ってない感じ。自分は何度か実装しないと体に染み込むまではいかないなぁ。

書籍メモ

"よくわかるPHPの教科書"のサンプルを打ちながらとったメモ。p258まで。
Webサービスつくりの実践ということで、twitter掲示板の作成(Part5 practice2)。

  • 機能
    • ユーザ登録
    • つぶやき投稿
  • セッション使う
  • ユーザ登録で、DBにパスワードを入れる際、mysql_real_escape_string関数で無害化した結果を、sha1関数で暗号化している:sha1(mysql_real_escape_string($_SESSION['join']['password']))
  • ログイン状態でのみ表示したいページ(投稿画面)へのアクセスでは、チェックしている:if (isset($_SESSION['id']) && $_SESSION['time']+3600 > time()) {...}
    • idがセッションに記録されている
    • 最後の行動から1時間以内である


ユーザのログイン情報はセキュリティを気にする必要があるから持ちたくない。
twitterとか外部サービスのアカウントで、サービスが使えるようにしているのを見かけるけどどうやってるんだろう。
検索キーワードはなんだろう。
→次調べること

ログイン画面から投稿画面に遷移できない。コーディングミスなんだろうけど、デバッグでbreakさせたい。
けど、方法がわからない。。