mtmr_t's blog

ひよっこiosぷろぐらま

symfonyとか携帯系自分メモ

最近の近況。
引き続きSymfonyフレームワークを用いたWebサイト対応してます。
最近は同フレームワークを用いて携帯サイト対応なうです。


★携帯の個体識別情報取得
http://www.centsys.jp/service/technical_information/symfony/mobile_development.html
このサイトのソースを参考にして、セットアップ。
自分の場合はDOCOMOはFOMAカードIDを取りたかったので、
checkメソッドをいじって、isDOCOMO且つisFOMAの場合に取得するようにした。
FireFoxのアドオンであるFireMobileSimulatorを使って確認していると、FOMAの端末の場合に取得できず
 メソッド自体で実行エラーとなってしまったが、実機で試すとちゃんととれた。


★新しくsymfonyのタスククラスを作るよ!
・あれ?作ったけどDB接続できないぞ?
エラーメッセージ:No connection information in your runtime configuration file for datasource [propel]
で、答えは以下。
// initialize the database connection
$databaseManager = new sfDatabaseManager($this->configuration);
$connection = $databaseManager->getDatabase($options['connection'] ? $options['connection'] : null)->getConnection();
が書いてなかった。

・あれ?エラーメッセージ変わったけど動かないぞ?
エラーメッセージ:Database "" does not exist.
で、答えは以下。
configureメソッド内のオプション指定でDB指定してなかった/(^o^)\
代わりに変な指定をしていて、そこに'propel'って書いてあったので、
ひとつ前のエラーに[propel]って入ったんだろうなと推測。
変な指定を消して、以下の一文に書き換えで解決。
new sfCommandOption('connection', null, sfCommandOption::PARAMETER_REQUIRED, 'The connection name', 'propel'), // add your own options here


エイリアスの設定
空メール送信を受信したタイミングで、Aliasで設定したsymfonyのtaskを実行するというもの。
symfonyのタスクが動かないぞ!
aliasesファイルに以下の様に設定。
メールのユーザ名: "|/var/www/html/プロジェクト名/symfony ○○:○○"
aliasesを使ってパスを張り、symfonyコマンドをどこからでも叩けるようにするとかも
ググってたら出てきたので面白そう。
http://d.hatena.ne.jp/Yudoufu/20080418/1208535787
自分では全然常識じゃなかったからちょーーとしたことではないんだがw
為になります。


★空メール送信するよ。
・おや、エラーでおちるぞ?
どうやらファイルのアクセス権限が無かったらしい。

・あれ、まだエラーで落ちるぞ?エラーメッセージとっとくの忘れた
ライブラリ読み込みが成功していなかった。
参考にしたサイトさんではあらかた
require_once('Mail/mimeDecode.php');
こんな記述なんだけど、自分の環境だとそれでは参照できない構成だったので
require_once('./../../../usr/share/pear/Mail/mimeDecode.php');
こう書くと実行できた。設定ファイル何か足りないのかなー。
とりあえず時間がないのでここまで。
※追記:検証用環境だとルートが設定してあるのか、
require_once('/usr/share/pear/Mail/mimeDecode.php');
でいけましたっと。


★検証用の環境で画像が確認できないよー
・アドレスの関係で相対パスから絶対パスに変更。
ここで1つ新出単語。「絶対パス
先輩の簡易説明後ググって、今まで言ってた絶対パスと違うことが判明。
詳細はこちらのサイトさんへ。
http://www.nikolaschka.com/log/2007/08/absolute_path_20.html

ちなみにローカルで見えなくなったから設定しようと思ったんだけど
過去に残した設定が色々あってめんどくさくて放置なう




もっと色々あったんだけどメモとってなかったので記憶に残っていたものだけ。
エラーメッセージも取って置けばWEB検索でひっかかるから役に立つんだろうけど…スイマセン