Cannot modify header information – headers already sent by が出力される。


cakePHPにてSessionを使用すると、
「cakephp Cannot modify header information – headers already sent by」
が出力される時の対応方法。

php.iniの「output_buffering」を「On」に設定すれば表示されなくなる。

備忘録




[PR] ラネクシーオンラインショップ
[PR] パソコン購入はこちら

cakePHPで Qdmailを使用


cakePHPでQdmailを使用する方法の備忘録

ここからダウンロード

ダウンロードしたqdmail.1.2.xx.zipを解凍

解凍してできた「qdmail.php」を「app/controllers/components/」にコピー

使用するコントローラに下記を追加
public $components=array( "Qdmail" );

以下で、メール送信

$this->Qdmail->to( 'hoge@dpx.jp' , '日本語' );
$this->Qdmail->subject('Qdmail on CakePHP メールのテスト');
$this->Qdmail->from('hoge@dpx.jp' , '配信元日本語名' );
$this->Qdmail -> text( '本文をここにかきます' );
$this->Qdmail -> send();

cakePHP で、ajaxzip2の使い方


cakePHPでajaxzip2の使用方法の備忘録

ここ
よりajaxzip2をダウンロード

ダウンロードした「ajaxzip2-20081102.zip」を解凍
解凍してできた「ajaxzip2」ディレクトリをapp/webroot/js配下へコピー

テンプレートにタグ追加
script('ajaxzip2/prototype.js'); ?>
script('ajaxzip2/ajaxzip2.js',array('charset'=>'UTF-8')); ?>

app/webroot/js/ajaxzip2/ajaxzip2.jsの編集
154行目移行野

// JSONファイルを受信する
var url = AjaxZip2.JSONDATA+'/zip-'+zip3+'.json';


var url = '../../js/'+AjaxZip2.JSONDATA+'/zip-'+zip3+'.json'
に変更

テンプレートに
input type="text" name="zip" size="10" maxlength="8" style="ime-mode:Disabled" onKeyUp="AjaxZip2.zip2addr(this,'address1','address2');">
追加
(address1, address2は各々都道府県、市区町村に対応)

でOK

cakePHP


今さらながらcakePHP 便利ですね。

cakePHPのdebug kitについて


cakePHPで開発時に便利なデバッグツール
debug kit
上記よりZIPファイルをダウンロード
cakePHPのバージョンに合わせてダウンロードする。

ダウンロードしたファイルを解凍
解凍後、ディレクトリ名を「debug_kit」に変更する。
debug_kitディレクトリを app/plugins以下にコピー

app/app_controller.phpファイルが無い場合は作成する。
app_controller.phpに
var $components = array('DebugKit.Toolbar'); を追記

これで、debug_kitが使用できます。

firefoxで使用しないと、うまく動作しないようです。
chromeでは文字化けしてました。

cakePHPで管理画面作成


app/config/core.phpの
Configure::write(‘Routing.prefixes’, array(‘admin’));
のコメントを外す。

これにより、
controllers/admin/actionでアクセスできる。

actionは
function admin_action()でアクセスOK

NetBeansでCakePHPを使用して開発するに当たっての注意事項1


NetBeansを使用してCakePHPプロジェクトを作成するにあたり、注意事項をメモ
・NetBeansからCakePHPプロジェクトをアップロードすると、app/tmpディレクトリがアップロードされなかった。
ー>仕方が無いので、transmitでアップロード
・rewriteが適用できていない。
ー>.htaccessを作成してルートディレクトリにアップロード