CakePHP1.2.5ベースで開発されているCMSのcroogoですが、
DBのテーブル定義等はdumpされたsqlが提供されているのみで、
インストール時にはそのSQLを直接MySQL(phpMyAdmin経由)で実行するようになっています。
インストール時はそれで十分でしたが、開発元でテーブル定義が変更された場合に
アップデートスクリプトが提供されていないため、SQLエラーが発生してしまいました。
そこでリポジトリの変更を追わずに差分だけをインストール済みのCroogoに適用する方法を考えました。
Read the rest of this entry »
管理画面と公開側、それぞれ別app(サブドメインでアクセスを分けるなど)にした場合、
データベースの設定は、それぞれapp/config/database.phpにあるので、別々に設定しなければならない。
これを1つにまとめてしまう方法。
app/config/database.php
< ?php
config('../../database_common');
class DATABASE_CONFIG extends DATABASE_CONFIG_COMMON{
}
database_common.php (appやcakeと同階層に設置)
< ?php
class DATABASE_CONFIG_COMMON {var $default = array(
'driver' => ‘mysql_log’,
‘persistent’ => false,
‘host’ => ‘localhost’,
‘login’ => ‘cake’,
‘password’ => ”,
‘database’ => ‘cake’,
‘encoding’ => ‘utf8′
);
}/
ShellからQdmailを使用してメール送信を行う方法
10月 15
shellクラスの外側でControllerとQdmailを読み込んでおく
App::import(“Core”,”Controller”);
App::import(“Component”,”Qdmail”);
function send(){
$this->Qdmail = new QdmailComponent();
$this->Qdmail->Controller = new Controller();
//このへんはお好みで
$this->Qdmail->to($this->_from); //送信元に送り返す
$this->Qdmail->from($this->_to); //fromは元宛先アドレス
$this->Qdmail->subject(__(‘auto reply’,true));//テンプレートに渡したい値は$contentsに詰め込む
//mail_regist.ctpをrenderしてメール本文に使用する
$this->Qdmail->cakeText($contents,”mail_regist”);
$res = $this->Qdmail->send();//以下略
}