2007�N08��05��

�w���p�[���\�b�hJavascript->object()��JSON�`�����o�͂ł���I�I(CakePHP)

�\�[�X��p�j���Ă���Ƃ��܂��ܔ����B
�h�L�������g�ɂ͂܂��f�ڂ���Ă��Ȃ��B

����ŁAPEAR::Services_JSON��php-json���g�p�����t���[�����[�N�݂̂Ŋ����ł���B
�������AJSON����PHP�I�u�W�F�N�g�ɕϊ�������@�͒񋟂���Ă��Ȃ��݂������B

����܂ŁAPEAR::Services_JSON��encode()�ōs���Ă����������AJavascript->object()�œ���m�F���Ă݂����Ƃ肠�������Ȃ��݂������B

���́Aobject�Ƃ������O�������I�ɂ킩�肸�炢���Ƃ��B
(toJSON()�Ƃ��Ȃ�ˁE�E�E)
���x���Fcakephp view Helper
posted by asaton at 21:48| Comment(40) | TrackBack(2) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N07��10��

CakePHP�Ń��C�A�E�g�t�@�C���ȊO�̃r���[�t�@�C������y�[�W�̃^�C�g���ɃA�N�Z�X����ɂ�

�y�[�W�̃^�C�g���́A$title_for_layout�Ɋi�[����Ă���B
���A���̕ϐ��̓��C�A�E�g�t�@�C�����炵���A�N�Z�X�ł��Ȃ��B

���̑��̃t�@�C������A�N�Z�X����ꍇ
$page_title

�Ƃ����ϐ��ɃA�N�Z�X����ƃR���g���[����$this->pageTitle�Őݒ肵���^�C�g���ɃA�N�Z�X�ł���݂������B
���x���Fcakephp �r���[
posted by asaton at 22:58| Comment(0) | TrackBack(0) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N07��09��

CakePHP:app/views/elements/�z�����t�H���_����������@

�r���[�t�@�C���̃u���b�N�`��̍ہA$this->renderElement()�𑽗p�����app/views/elements�z���Ƀt�@�C���������쐬���ꌩ�ɂ����Ȃ�B

�����ŁA
app/views/elements/common/* ����
app/views/elements/posts/* posts�R���g���[��
app/views/elements/users/* users�R���g���[��

�Ƃ�����x�@�\���Ƃɐ����������Ȃ�B

�ŁA��L�̂悤�ȃt�@�C���\����renderElement���Ăяo�����Ƃ��o���邩���ׂĂ݂��Ƃ���ӊO�ɊȒP�ɏo���邱�Ƃ��킩�����B
$this->renderElement('�t�H���_��/�G�������g');

�Ƃ����OK�݂������B

�Ⴆ�΁Aapp/views/elements/posts/element1.thtml��`�悵�����ꍇ
$this->renderElement('posts/element1');

�Ƃ���Ζ��Ȃ����삷��B


���x���Fcakephp �r���[
posted by asaton at 23:55| Comment(0) | TrackBack(8) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N07��08��

���f����condition�z��̓W�J(CakePHP)

�v�X�ɍX�V�I�I
�ŋ߁ACakePHP��F�X�ȈČ��Ŏg�p���Ă���̂����A
�������Ă����Ȃ��Ǝ��T���̂��ʓ|�Ȃ̂ŏ����B

CakePHP�ł́AfindAll���\�b�h�Ȃǂ�$conditions�ɔz���n����where����\�z���Ă����B

�Ⴆ�΁A
$conditions = array('and' => array('Field.id = 3', 'or' => array('Field.id = 1', 'Field.id = 2')));


�Ƃ����ꍇ

WHERE (`Field`.`id` = 3) AND ((`Field`.`id` = 1) OR (`Field`.`id` = 2))


�Ƃ��Ă����̂ŁA������and�ł‚Ȃ��Ŏ��Aor�ł‚Ȃ��łƕ�����Ƃ��č쐬������v���O�������g�݂₷���B

�ŁA$model->query�ł�$conditions��z��Ƃ��č\�z���Ă����Asql�𔭍s���钼�O��where����\�z�������B
(���O�ō쐬���Ă��悢�̂����A�C�����d�˂��where��̒����and�������肵��DB�ɓ{����̂������Ƃ������̂ŁE�E�E)

CakePHP�̃\�[�X��ǂ��Ă���Ƃǂ����ADboSource�N���X��conditions���\�b�h���Ăяo���΂悢�Ƃ����̂��킩�����B
(���ۂ�conditionKeysToString���\�b�h�ōs���Ă���)

�ŃR���g���[���N���X�̃A�N�V�������\�b�h����

$conditions = array('and' => array('Field.id = 3', 'or' => array('Field.id = 1', 'Field.id = 2')));
$db =&�@ConnectionManager::getDataSource($this->Model->useDbConfig);
$conditions = $db->conditions($conditions);


�Ə������Ƃł��܂��������B
DataSource���擾����̂��ʓ|�Ȃ̂ŁAAppModel������ɋ��ʉ����Ă������B



���x���Fcakephp ���f��
posted by asaton at 21:11| Comment(0) | TrackBack(1) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N04��23��

CakePHP�F�R���g���[�����Ńw���p�[�N���X���g���Ă݂�

CakePHP�Ńw���p�[�Ƃ����̂́A�}�j���A���ł�
http://www.cakephp.jp/doc/helpers.html

�w���p�[�́A�f�[�^�̐��`��\���Ȃǂ́A�r���[�ň�ʂɕK�v�Ƃ����֐���֗��Ȏd���Œ񋟂�����@�ł��B


�ƒ�`����Ă����ʂɃr���[�Ŏg�p�������̂��B

�������ACakePHP�̕W���Œ񋟂���Ă���w���p�[�N���X�̒��ɂ́ATimeHelper�N���X��daysAsSql���\�b�h�Ȃ�SQL��where����쐬����̂������Ă����悤�ȁA�R���g���[���N���X�ł��ЂƂ��g�p�������֗��ȃ��\�b�h����`����Ă���B

�����ŃR���g���[������

var $helpers = array('Html', 'Form', 'Time');


�ƒ�`���A�r���[�t�@�C����$Time->daysAsSql�ƃA�N�Z�X����悤�ɁA�A�N�V�������\�b�h����

$sql = $Time->daysAsSql("2007/04/01", "2007/04/20", 'field');


�Ƃ��Ď��s���Ă݂��B

�������A$Time�ϐ�����`����ĂȂ��Ƃ����G���[�Ŏ��s�B

�����𒲍����Ă݂�ƁA�r���[�Ŏg�p����$Html��$Time�́A����View�N���X(cake/libs/view/view.php)��_render(�v���e�N�g)���\�b�h�̃��[�J���ϐ�������Ƃ������Ƃ����������B
(�R���g���[����set�֐��Ńr���[�ɓn�����֐�������_render�֐�����extract����Ă���B)

�����āA����_render���\�b�h��`���Č����$this->_loadHelpers���\�b�h���R�[�����Ă���A�ǂ���炱��_loadHelpers���Ńw���p�[�N���X���쐬����Ă���Ƃ����̂��킩�����B

_loadHelpers���\�b�h�ł̓R���g���[����$helpers�t�B�[���h�ɒ�`���ꂽ�w���p�[�N���X������new����A'base'��'webroot'�Ȃǂ̃R���g���[���N���X�̃t�B�[���h���w���p�[�N���X�̃t�B�[���h�ɃR�s�[���Ă���B
(���ۂɂ̓R���g���[������r���[�ɐݒ肳�ꂽ�t�B�[���h)

�Ƃ������Ƃ́A�R���g���[�����Ŏg�p�������w���p�[�N���X��new���Ă��΂����̂ł͂Ȃ����ƍl���R���g���[�����̃A�N�V�������\�b�h����

$Time = new TimeHelper();


�Ƃ��Ă݂��B������TimeHelper�N���X�����‚���Ȃ��ƃG���[�B�ǂ����TimeHelper�N���X�̃t�@�C�����ǂݍ��܂�ĂȂ��݂������B

_loadHelpers���\�b�h���𒲂ׂĂ݂��loadHelper�֐�(�O���[�o��)���g�p���K�v�ȃw���p�[�N���X�̃t�@�C����ǂݍ��܂��Ă���̂��킩�����B

�Ȃ̂ŁA�R���g���[���N���X�̔C�ӂ̃A�N�V�������\�b�h����

if(loadHelper('Time'))
{
$Time = new TimeHelper();
$sql = $Time->daysAsSql("2007/04/01", "2007/04/20", 'field');
echo $sql;
}


��loadHelper�֐��Ńw���p�[�N���X��ǂݍ���ł݂�ƁA

(field >= '2007-04-01 00:00:00') AND (field <= '2007-04-20 23:59:59')


�Ɗ��҂������ʂ������A�R���g���[�����łփ��p�[�N���X���g�p���邱�Ƃɐ��������B

����ō��܂ŃR���g���[�����ɃR�s�y���Ă����̂��X�b�L������E�E�E

���Ȃ݂ɁAloadHelper�֐������Acake/basics.php�Œ�`����Ă���B
���̃t�@�C���ɂ͑��ɂ�e()��h()�Ȃ�echo()��htmlspecialchars()�Ȃǂ̃V���[�g�J�b�g�֐�����`����Ă���݂������B
posted by asaton at 15:58| Comment(0) | TrackBack(1) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N04��16��

CakePHP�Ń����^���T�[�o�ł̃T�C�g�\�z��(2)

Windows�‹�(xampp)�ŊJ�����Ă���Ə������݌�����ݒ肷��K�v���Ȃ����Axrea�Ȃǂ̃����^���T�[�o��linux�Ȃǂ�unix�nOS�Ȃ̂ŏ������݌�����ݒ肷�邱�Ƃ��K�v���B

CakePHP�̏ꍇ�Aapp/tmp�t�H���_�ɂ���t�H���_�̂����‚��ɏ������݌�����^���Ȃ���΂Ȃ�Ȃ������B

��̓I�ɂ͉��L��2�‚ɏ������݌�����^���Ă���B

/tmp/cache/models/
/tmp/logs/


/tmp/chache/models��������́A�f�[�^�x�[�X�̃e�[�u���̃J�������Ȃǂ̃e�[�u�������L���b�V�����Ă���B
CakePHP�����s����SQL��\������ɂ́H�Ȃǂ̕��@��SQL�����s�����DESC���߂ŃJ���������擾����ꍇ�Ǝ擾���Ȃ��ꍇ������B�����炭�R���g���[���ɕύX���Ȃ��ꍇ�A�L���b�V������擾���邽�߂ɕK�v�Ȃ̂��낤�B

/tmp/logs/���������$this->log()�Ń��O�����W����ꍇ�ɕK�v���B�����̊‹��ł�PHP�̃G���[�������̃t�H���_�ɋ��󂳂��Ă���B

�֘A�L��
CakePHP�Ń����^���T�[�o�ł̃T�C�g�\�z��

CakePHP���T�C�g
http://jobrss.net
���x���FPHP cakephp
posted by asaton at 14:55| Comment(0) | TrackBack(1) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N04��13��

CakePHP�̃Z�b�V�����̃^�C���A�E�g�̐ݒ�

app/config/core.php��
define('CAKE_SESSION_TIMEOUT', '120');

�����肱���ύX����΃^�C���A�E�g���Ԃ�ύX�ł���B

���ӂ��Ȃ���΂Ȃ�Ȃ��̂́A�f�t�H���g�l��120�ƂȂ��Ă��邪�����120�b�Ƃ����Ӗ��ł͂Ȃ��B

CakePHP�̃Z�V�����̃^�C���A�E�g���Ԃ̐ݒ�l�́A
CAKE_SECURITY * CAKE_SESSION_TIMEOUT

���瓱���o�����B

�‚܂�f�t�H���g�̏ꍇ�ACAKE_SECURITY��
define('CAKE_SECURITY', 'high');

�Ɛݒ肳��Ă���
120*10=1200�b

�Ƃ������ƂɂȂ�̂��B

CAKE_SESSION_TIMEOUT�̒�`�̃R�����g���ɂ͉p���
high: multiplied by 10
medium: is multiplied by 100
low is: multiplied by 300

������Ă���Ahigh�̏ꍇ10�Amedium�̏ꍇ100�Alow�̏ꍇ300��CAKE_SESSION_TIMEOUT�Ɋ|�����킹�܂���Ə�����Ă���̂��������Ƃ��Ă��܂��������E�E�E

120�b�Ń����[�h���Ă��܂��l���c���Ă���B�ǂ�����?�Ǝv�����炱���������Ƃ������̂��E�E�E

�}�j���A���ł�
11.2. CakePHP �R�A�Œ�`���ꂽ�萔�Ɉ�s���肰�Ȃ�
CAKE_SESSION_TIMEOUT: �Z�b�V�����^�C���A�E�g�܂ł̕b���B���̒l�́A CAKE_SECURITY ���|���Z�������̂ɂȂ�܂��B

�Ə�����Ă��邪

���\����킵���̂��v���ӁI�I
�����̏ꍇ�A�u���E�U�̃L���b�V�����PHP�̐ݒ��炠��₱���^���Ď��Ԃ�Q��Ă��܂��܂����B�B�B
���x���Fcakephp PHP
posted by asaton at 12:58| Comment(3) | TrackBack(0) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N04��11��

CakePHP�Ń����^���T�[�o�ł̃T�C�g�\�z��

CakePHP�ʼn��L�T�C�g���\�z���Ă݂��B
http://jobrss.net

jobrss.net

�t�B�[�h�z�M���Ă���]�E�T�C�g�̐V�����l���������ł���T�C�g�ł��B
����I�ɏ��񂵂Ă���̂ŐV�����l��񂪂ǂ�ǂ�lj�����Ă����܂��B
(1��500���ȏ�lj�����Ă܂��B���オ�S�z�E�E�E)


�‹����Q�l�܂ł�

�T�[�o : xrea+(PHP5,mysql)
�t���[�����[�N : CakePHP(1.1�n)�Apagination�R���|�[�l���g
RSS��̓G���W��: SimplePie

�����^���T�[�o�g�p�ł������\���K�ɓ����Ă��܂��B
(�����T�o�ł������t���[�����[�N���Ă������Ȃ�������???)
cron��rss�t�B�[�h���擾���Ă��܂��������CakePHP�œ����Ă��܂��B
�Q�l�FTips/cron�Ŏ��s


����̖ڕW

1.�����@�\�̋����B(���ڂ̃L�[���[�h���\��������Ɩʔ��������E�E�E)
2.�l�C���ɕ\��(ajax�ŊO�������N��ǐ�)
3.ACL���g���Ă݂���


�����b�g�A�f�����b�g�������Ă����܂��B�t���[�����[�N�I��̎Q�l�ɁE�E�E

CakePHP�̃����b�g(�I�񂾓_)

1.���ꂪphp(�����ƂȂ�΃\�[�X��ǂ��������B)
2.���{��̌����}�j���A��������(�|�󌳂��R�~���j�P�[�V�����r�W�l�X�A���F�j���[����ɂ͊��ӂł�)
3.���{��̏�񂪑���(CakePHP �̂��������H�ו����񓙎Q�l�ɂ��܂���)
4.�y���B�����T�o�ł������B(�����I�B���ꂪ��ԑ傫��)

CakePHP�͔��Ɏg���₷���t���[�����[�N���Ǝv���܂��B
ruby on rails���A�ŋ߂̃t���[�����[�N�𗝉����Ă���΂����ɊJ���ɂƂ肩����܂��BPHP���g�������Ƃ�����΁A����K���ɂ�����R�X�g�������ł��܂����E�E�E�B�قƂ�ǂ̃T�[�o�ʼn��K�ɓ��삷��v���܂��B���‹���rails�g���ďd���ȂƊ������l�ɂ͂��X�X���ł��B

CakePHP�̃f�����b�g

1.log���肪�ア�B
2.php�̃G���[�o�̓��x�����t���[�����[�N�����ڏ���������B

1�Ԃ̃��O����ł����ADB�̓f���G���[��߂炦�鎖���o���܂���B
���f����findAll�����s�����ꍇ�A�v������null���Ԃ��ė��邾���ł��B
2�Ԃ̃G���[�o�̓��x���ł����{�Ԋ‹��ł�error_reporting(0)�Ƃ���Ă��܂��܂��B�f�o�b�N�‹��ł�display_errors�������ON�ɂ���܂��B������A�v�����Ő��䂷�邱�Ƃ͏o���܂���B�Ή���Ƃ��Ď����́A�t���[�����[�N�̊Y���ӏ����폜���A.htaccess�Ő��䂵�Ă܂��B(���̃T�C�g�͂ǂ����Ă�񂾂낤�E�E�E)

��L2�_��CakePHP�̃A�}�`���A���ۂ���������_�ł��B
��K�̓T�C�g�̗p�ւ̏�ǂƂȂ��ł͂Ȃ����Ǝv���܂��B
(���X�������������ł���Symfony�����̂����肵�����肵�Ă�悤�Ɋ����܂����B)


����A�R���^�N�g(�₢���킹)�t�H�[�������i���ł������Ȃ��̂͌��J���Ă��������Ǝv���Ă��܂��B

���x���Fcakephp PHP ���l �]�E
posted by asaton at 14:32| Comment(0) | TrackBack(0) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N04��05��

CakePHP�Ńy�[�W�̃^�C�g���̐ݒ���@

�r���[��$title_for_layout�Ƀy�[�W�̃^�C�g�����i�[����Ă���B

�^�C�g�����J�X�^�}�C�Y�������ꍇ�A�R���g���[����
$this->pageTitle

�ɐݒ肵�Ă��Ƃ����炵���B

�ł���pageTitle�����}�j���A���̃R���g���[���̕ϐ��̐����ɂ͋L�q����Ă��Ȃ��B

�ǂ��ɍڂ��Ă��邩�Ƃ����ƃr���[�̃��C�A�E�g�̐���(���̂ق�)�̂Ƃ���ɋL�q����Ă���B

���Lurl
http://www.cakephp.jp/doc/views.html#id4808138


�����n�}�����E�E�E
posted by asaton at 18:06| Comment(0) | TrackBack(0) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

2007�N03��29��

CakePHP�Ńy�[�W�쐬�ɂ����������Ԃ�\��������@

CakePHP�̓O���[�o���ϐ�$TIME_START�ɃX�^�[�g�������Ԃ��L�^���Ă���B(cake/bootstrup.php�ŋL�^���Ă���̂ő����̌덷�͂���)

production���[�h�ȊO�Ȃ�HTML�R�����g�Ƃ��čŌ�̂ق��ɏo�͂���Ă���B
(app/webroot/index.php��85�s�ڂ�����Q��)

�Ȃ̂�index.php�̊Y���ӏ����Q�l�ɂ��č쐬���Ă݂��B

�r���[�t�@�C���ɉ��L�R�[�h��}������B
(��Aapp/views/layouts/default.thtml��footer��div��)

<?php global $TIME_START; echo round(getMicrotime() - $TIME_START, 4)."�b"; ?>


�G�������g���������Ȃ�Aapp/views/elements/��timer.thtml���쐬����L�R�[�h��}�����A�r���[�t�@�C���̔C�ӂ̈ʒu�ɉ��L�R�[�h��}������B

<?php echo $this->renderElement('timer'); ?>



�w���p�[�֐��Ƀ��\�b�h��lj����Ăق����ȁE�E�E
���x���FPHP cakephp framework
posted by asaton at 17:11| Comment(0) | TrackBack(0) | CakePHP | ̃uO̓ǎ҂ɂȂ | XV`FbN

�L��


���̍L����60���ȏ�X�V���Ȃ��u���O�ɕ\��������Ă���܂��B

�ȉ��̂����ꂩ�̕��@�Ŕ�\���ɂ��邱�Ƃ��”\�ł��B

�E�L���̓��e�A�ҏW�������Ȃ�
�E�}�C�u���O�́y�ݒ�z ���@�y�L���ݒ�z ���A�u60���ԍX�V�������ꍇ�v �� �u�L����\�����Ȃ��v�Ƀ`�F�b�N�����ĕۑ�����B


�~

���̍L����90���ȏ�V�����L���̓��e���Ȃ��u���O�ɕ\������Ă���܂��B