29 Ekim 2007 Pazartesi

Fatal error: Class 'MyclassController' not found in cake_1.2\cake\dispatcher.php on line 188

Bu saçma sapan hatanın sebebi şu imiş :

< ?

yerine

< ? php

yazarsanız sorun düzelir.

Allah'ım bana sabır ver.

6 Ekim 2007 Cumartesi

Radio Buttons CakePHP 1.1 den 1.2'ye geçiş.

Aşağıdaki örneklerden faydalanabilirsiniz :

cake :
< ?php
echo $phpgaclForm->radio('fieldName', array('0' => 'Allow', '1' => 'Deny', '2' => 'Inherit'), null, array('class' => 'radio', 'value' => '3'));
? >

html:
Allow
Deny
Inherit


cake:
< ?php
echo $phpgaclForm->radio('fieldName', array('0' => 'Allow', '1' => 'Deny', '2' => 'Inherit'), null, array('class' => 'radio', 'value' => '0'));
? >

html:
Allow
Deny
Inherit

Özet olarak, seçili gelmesini istediğiniz bir seçenek var ise, value kısmına onun solundaki rakamı yazmanız gerekir, eğer hiç seçili olmasın istiyorsanız, value kısmına burada 0,1,ve 2 tanımlı olduğu için, bunlar dışında bir rakam yazmalısınız. Bu örnekte 3 yazılmıştır.

4 Ekim 2007 Perşembe

PhpGacl içinde kullanılan ADO DB ve utf-8 problemi

Uzun çabalardan ve debelenmelerden sonra nihayet phpgacl'yi kısmen CakePhp 1.2 içinde çalışabilir hale getirmeyi başardım. Ancak bu seferde karşıma utf-8 problemi çıktı. Daha CakePhp için uyguşadığım metodu burada nasıl uygularım diye düşündüm - ki blog'un ilk sayfalarında CakePhp için olan çözümü bulabilirsiniz - ve sonunda adodb-mysql.inc.php içinde bulunan _query metodunu;

function _query($sql, $inputarr) {
//global $ADODB_COUNTRECS;
//if($ADODB_COUNTRECS)
return mysql_query($sql, $this->_connectionID);
//else return @mysql_unbuffered_query($sql,$this->_connectionID); // requires PHP >= 4.0.6
}



aşağıdaki şekilde değiştirdim. Sorunumu şimdilik çözdü, eğer yeni bir şeyler çıokmaz ise :)

function _query($sql, $inputarr) {
//global $ADODB_COUNTRECS;
//if($ADODB_COUNTRECS)
mysql_query("SET NAMES 'UTF8'", $this->_connectionID);
return mysql_query($sql, $this->_connectionID);
//else return @mysql_unbuffered_query($sql,$this->_connectionID); // requires PHP >= 4.0.6
}

3 Ekim 2007 Çarşamba

formTag CakePHP 1.1 den 1.2'ye geçiş.

1.1 de html helper içindeki formTag kullanılıyorken, 1.2 de yerine form helper içinde bulunan create metodu kullanılıyor.

Örneğin;

$htmlOptions['url'] = 'action';
echo $phpgaclForm->create(null, $htmlOptions);


kullanımı sonucu aşağıdaki html'i elde ediyorsunuz :

<form method="post" action="/aaa/bbb/ccc/action">

Kaynak : https://trac.cakephp.org/changeset/4233/branches/1.2.x.x/cake/libs/view/helpers/ajax.php
Eğer formTag'ın birebir karşılığını arıyorsanız, şöyle bir çözüm işinizi görebilir;

< ? php $homeUrl = $this->params['url']['url']; ? >
< ? php $htmlOptions['url'] = '/' . $homeUrl; ? >
< ? php echo $phpgaclForm->create(null, $htmlOptions); ? >