パンプキンスパイスラテ

IT系のことが多めの日記帳です

PHP

PHPでSSIを使う

PHP

AddOutputFilter INCLUDES .shtml .html .phpこんな感じで Apache の設定ファイルに .php を追加する。

php.iniが読み込まれない場合の対処法

PHP

phpinfo()で下記のようになっていて、php.iniを読み込めない場合の対処法。 Loaded Configuration File none Apacheのhttpd.confの下記の値を確認する。 PHPIniDir環境によって、ここにパスを指定したりコメントアウトしたりしてみて、Apache再起動で直る場…

WindowsにPHPをインストールした際に、PHP.iniでハマったのでメモ

PHP

MySQLのドライバーが、Apache経由で、phpinfo()で確認すると「PDO drivers mysql」と有効になっているのに、コマンドプロンプトから「php -m」で確認すると、mysqlが認識されず、コマンド経由のPHPからMySQLにアクセスできずにエラーになっていた。 調べても…

PHP5.3.8のWindows環境にPEARをインストールする方法

PHP

phpをインストールしたフォルダに go-pear.bat というバッチファイルがあります。 http://www.bnote.net/windows/windows/win_pear.shtml ないよ…。 PHP5.3.8にはgo-pear.batは入ってないみたいなので他の方法を探した。 go-pear.phar 下記からダウンロード…

WindowsにPHP5.3.6をインストールしてApache2.2で動かしたらtimezoneのWarningが出たときの対処法

Warning: phpinfo() [function.phpinfo]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you…

サイトマップをYAMLで表現する方法

PHP

サイトマップ home「ホーム」 | |- company「会社情報」 | | | |- message「メッセージ」 | | | `- ir「IR情報」 | |- works「主な実績」 | | | `- projects「主な受賞歴」 | |- recruit「採用情報」 | `- contact「お問い合わせ」こんな感じのサイトマップ…

CakePHPでミニブログをつくる・その5

いきなりだけど完成した。 CakePHPで作ったミニブログ ちょっと一言。 http://www.hachikun.com/hitokoto/ 入力したテキストから、キーワード(名詞)を自動取得して、Twitter検索からデータを取得して表示するよ。 細かい修正点はあるけど、ひとまず公開。 …

CakePHPでミニブログをつくる・その3

見た目を綺麗にする viewファイルを修正 app/views/posts/index.thtml <div class="posts"> <h2>List Posts</h2> <table cellpadding="0" cellspacing="0"> <tr> <th>Id</th> <th>Text</th> <th>Keyword</th> <th>Created</th> <th>Modified</th> <th>Delflg</th> <th>Actions</th> </tr> <tr> <td></td></tr></table></div>

CakePHPでミニブログをつくる・その4

入力テキストにURLが含まれていたら自動でリンクする app/config/bootstrap.php に独自関数を記述。 //オートリンク function autoLink($string){ $text = htmlspecialchars($string, ENT_QUOTES); $text = preg_replace('/(https?:\/\/[-_.!~*\'()a-zA-Z0-9…

CakePHPでミニブログをつくる・その2

まずは「bake」で土台を作る。 cake/scripts/bake.php Model Controller View を対話的に生成。 http://localhost/tsubuyaki/posts にアクセス。 よしでけた! でも、http://localhost/tsubuyaki でこの画面になるようにしたい。 app/config/routes.php の $…

CakePHPでミニブログをつくる・その1

仕様 タイトルは「俺のつぶやき(仮称)」 ミニブログ 記事を投稿する際、キーワードを入力すると、Twitterからそのキーワードで検索したコメントを取得&表示する。 キーワード無しは、日本語形態素解析Webサービスで、登録時自動的に名詞を取得して検索。…

CakePHPをインストールしたよ。バージョンは1.1か1.2か迷ったよ。

昨日、PHP5.2.6まで動作確認できたので、今日はCakePHPをインストール。バージョンを1.1にするか1.2にするか迷った。1.1は安定してるだろうし、調べれば情報はたくさん出てくる。1.2は情報は少ない(それほどでもない?)かもしれないけど、風の噂にバリデー…

CentOSのPHPを5.1.6から5.2.6へバージョンアップさせる時につまづいたメモ

Apache、MySQL、PHPをインストールして、よーし俯瞰検索をローカルで動かすぞ〜とデータを持ってきたらエラー表示。しかも途中で止まってる。どこがおかしいのかソースを追っていったら、どうやら「json_decode」が原因のよう。んで調べてみたら、 json_deco…

俯瞰検索のクラス図を描いてみた

PHP

うーむ、どこかおかしい気がする〜。でも一応動いてるんだよなぁ。 一応コードを晒しとく。処理部分は省略。 search.php 1)…

外部javascriptファイルを読み込んでごにょごにょする方法

とあるWebサービスを考えていて暫く悩んだところ。いわゆる「スクリプトタグ」を貼り付けるだけで〜、的なサービスにしたかったんだけど、javascriptはクロスドメイン制限によって、異なるドメイン間で、XMLhttpRequest通信はできない。んなもんで、javascri…

SmartyでRSS表示(SimpleXML)

PHP

PHP5から追加された、SimpleXML。これ簡単だし超便利。Smartyで実装してみたよ。 phpファイル(一部) $o_smarty = new Smarty; $rss01 =simplexml_load_file('http://d.hatena.ne.jp/takeru-c/rss2'); $o_smarty->assign("rss01",$rss01); テンプレートファ…

PHPでFizzBuzz

PHP

for ($i = 1; $i <= 100 ; $i++) { if($i % 3 == 0) echo "Fizz"; if($i % 5 == 0) echo "Buzz"; if($i % 3 != 0 && $i % 5 != 0) echo $i; echo "<br />".PHP_EOL; }

オートリンク関数を作ってみた

PHP

$1</a>', $text); return $text; } echo autoLink('test:http://www.hatena.ne.jp/'); ?> こんな感じ。あると便利(*゚▽゚)ノ

Smartyのテンプレート内でjavascriptを使う

PHP

Smartyでページを構築してたら、どうしてもjavascriptの部分でエラーになってしまう。しかもSmartyのエラー。悩んで調べてみたら、どうやらSmarty内でjavascriptを使うには、 {literal} <script type="text/javascript"> //<![CDATA[ function hoge(){ ごにょごにょ } //]]> </script> {/literal} の…

Smartyのディレクトリ構成について

PHP

まぁ、rewrite_moduleを使えばいいのかもしれないけど。 使わない場合、アクセスするファイルとテンプレートの表示ファイルを同じようにディレクトリ分けすると、下記の部分のパスもそれに合わせて変えなきゃいけなくて面倒。 ■ディレクトリ構成 index.php h…

classがようやくわかってきた

PHP

targetDate = '2008/06/13'; $obj -> holidayList = $holidayList; //結果を表示 echo $obj -> isHoliday(); //日付処理クラス Class DateProcess{ public $targetDate; public $holidayList; //休日判定 function isH…

CodeIgniter(コードイグナイタ)を調べてみた

PHP

本屋で見かけた本。CodeIgniter徹底入門 [ 河合勝彦 ]ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天ブックス価格: 4,104円こーどいぐないた??知らない。。と思って調べてみたけど、これいいかも。ほとんどPHPの標準知識で書け…

オブジェクト指向にしようとして挫折

PHP

PHPでスロットゲームを作るよ 以前作成したスロットゲームをオブジェクト指向で書き直してみようとして早速挫折。うーむ、いまいちオブジェクト指向を理解していなかったみたい。単純に処理部分をClassに置き換えてみたんだけど、どうもうまく動かない。もう…

Rubyレシピブックを元にPHPで書いてみる.その3

PHP

レシピ52 文字列の一部を置換する ソース 実行 C:\php>php 003.php 愛愛愛 ちなみにRubyだと p "あいあいあい".sub(/あい/, "愛"); p "あいあいあい".gsub(/あい/, "愛");実行 C:\ruby>ruby -Ks 003.rb "愛あいあい" "愛愛愛" 文字列置換は結構使うから覚え…

PHPでスロットゲームを作るよ

PHP

動作サンプル http://www.hachikun.com/test/002.php http://startup.dino.co.jp/2008/05/28/php-8/ このエントリに感化されてスロットゲームを作ってみたよ。 hirafujiさんのプログラムに加えて、下記の仕様を実装。 ゲームバランス調整 ゲームオーバーにな…

Rubyレシピブックを元にPHPで書いてみる.その2

PHP

レシピ25 文字列の長さを得る ソース "); echo strlen("こんにちは、PHP"); echo PHP_EOL;//改行 echo ("文字数=>"); echo mb_strlen("こんにちは、PHP","Shift-JIS"); //コマンドライン実行なので文字エンコード指定しないとおかしな値になる ?> 実行 C:\ph…

Rubyレシピブックを元にPHPで書いてみる.その1

PHP

レシピ24 文字列を反復する ソース 実行 C:\php\recipe>php 001.php Hello, PHP! Hello, PHP! Hello, PHP!ちなみにRubyだと・・・ print ("Hello, Ruby!\n") * 3; C:\ruby\recipe>ruby 001.rb Hello, Ruby! Hello, Ruby! Hello, Ruby! * 演算子が使える!!…

Rubyレシピブックを元にPHPで書いてみる

PHP

はじめます。 PHPの勉強ついでに、Rubyも覚えられるかなぁと実験。 よろしくどうぞ。Rubyレシピブック 第2版 268の技作者: 青木峰郎,後藤裕蔵,高橋征義,まつもとゆきひろ出版社/メーカー: ソフトバンク クリエイティブ発売日: 2007/02/01メディア: 単行本購…

CakePHPでメモ帳:その4

PHP

前回のコントローラ、モデル、ビューを詳しくみていくよ。 まずはコントローラ ファイル名は、コントローラ名_controllerなので、 /app/controllers/memos_controller.php となる。ソース一覧は下記の通り。 set('memos', $this->Memo->findAll(array( 'Memo…

CakePHPでメモ帳:その3

PHP

DBにテストデータを登録。続いてmodel、controllerを作成。FastCakePHPを丸写ししたので、後で詳しく読んでいこうと思う。とりあえず動くようにした。Railsもいじったことあるから、なんとなくわかったけどね。 んでviewの作成。それからapacheを起動して、h…

CakePHPでメモ帳:その2

PHP

DBを作成するよ。データベース名は適当に「cake」テーブル名は「memos」でカラムは下記の通り。 id -> int型 body -> text型 created -> datetime型 modified -> datetime型 delflg -> tinyint型 テーブル名は、アソシエーションの為に複数形にしてるよ。

CakePHPでメモ帳

PHP

を作る。FastCakePHPの「todoリストを作ろう」を参考にすれば数時間で作れるんじゃないかと思って。 まずはCakePHP本体をインストール 最新版を問題なくインストール完了。 PHPmyAdminをインストール mySQLのユーザー名&パスワードを忘れて手間取るが、何と…

開発環境

PHP

ずーっと開発はDreamweaverを使ってたんだけど、なにやら良さげらしいとの噂を聞きつけ、Eclipseを導入してみたよ。さらに日本語プラグインを入れてみた。 左下に注目。cssのクラスやら属性やらが一覧できる!!これ便利〜。ただコードヒントが出なかったん…

掲示板

PHP

ちょろっとCSSをあててみたよ。

というわけでPHP掲示板を作るよ

PHP

早速DB設計。DBはMySQLを使います。まずは、スレッド。 THREADテーブル id title delflg お次はコメント。 COMENTテーブル id THREAD_id text writer last_modified delflg あ、これだけだ。 XHTML ぱぱっと作ってみた。 これを基本XHTMLとして、さりげなくC…

お〜っとっと

PHP

最近javascriptやらSQLやらcoldfusionやらで遊んでたら!PHPをすっかり忘れてたぞい、と。ここらで何か作らな忘れそうだ。。。よし、Smartyで掲示板を作ろう。2ch風に新着スレッドを上の方に並べて、表示はシンプルに。うんうん。ところでSmartyで掲示板を作…

Smartyっていいかも

PHP

本は半分くらい読んだ。これ面白いかも。確かにデザイナーと分担して作るのに適してるなぁ。テンプレートファイルだけ作っちゃって、あとはデザイナーにデザイン作ってもらって。このテンプレートファイルの拡張子は自由みたいなんだけど、.htmlでもいいのか…

続・曜日取得関数

PHP

ごめん、タイムスタンプ指定のほうがシンプルかも。

曜日取得関数

PHP

どの言語でもそうかもしれないけど、PHPで日本語の曜日取得が面倒だなぁと思って作ってみた。 すでに誰か作ってるんだろうけど、見つからなかったので。使い方は、$date に対象日付をセットして、dayOfTheWeek() へ丸投げ。…

SQLインジェクション対策を覚えた!

INSERT時 $query = sprintf( "INSERT INTO plan (title,date,delflg)VALUES('%s','%s''%s''%s',0)", mysql_real_escape_string($value_title), mysql_real_escape_string($value_date), mysql_real_escape_string($value_date_h), mysql_real_escape_string(…

PHPスケジューラー(仮)

PHP

ちょこちょこ作成中。 ようやく、 1.登録画面からデータをDBに格納。 2.DBからデータを表示。 までできた。 日付部分はjavascriptですべてやってます。まだSQLインジェクションとか全然考えてないから、そこらへんも後で直しておかなきゃ。 残る作業は、1.情…

PHPブログ風ダイアリー

PHP

一応、完成。 右カラムには、コードでブログパーツを登録可能。 前からやりたかった、キーワードのタグクラウド付き。 ただ書き込み数によって、フォントサイズを変えてるだけなんだけど、もっといい方法ありそうだなぁ。 あとで調べておこう。 次はもっとシ…

PHPフレームワーク

PHP

「Symfony」と「cakePHP」のどっちをチョイスするか悩み中。 うーむ、どっちも使ったことある人の評価を聞きたい、、、

ブログ風ダイアリー(PHP練習用)

PHP

■機能一覧 WYSIWYGエディタ(FCKediter) タグクラウド ブログパーツ貼り付け コメント・トラックバックは無し(とりあえず) Apacheでmod_rewrite使用 CSSでシンプル構成(当然だけど) (順不同) とりあえずはこんなとこ。 管理画面はこんなん。結構シン…

ブログっぽい日記システム

PHP

をPHPで開発してるんだけど、 FCKエディタ実装でつまづいた。 通常機能は簡単だったんだけど、 ファイルマネージャーがどうしても実装できん!! いろいろGoogleで探すも、解決策が見つからない(><) うーむうーむ、と悩んでいたら!! http://d.hatena.n…