MySQL procedūrų naudojimas CakePHP

Pačiam dar neteko naudoti, bet pastebėjau gerą įrašą ta tema. Pirmiausia duomenų bazės nustatymuose (config/database.php) nustatom tvarkyklę:

  1. 'driver' => 'mysqli'

Procedūra iškviečiama $this->query() pagalba:

  1. function findAd($site) {
  2.  $advert = $this->query('CALL display_ad("'.$site.'");');
  3.  return $advert;
  4. }

Toliau šią funkciją panaudojam kontroleryje:

  1. function show($site = null){
  2.  $advert = $this->Advert->findAd($site);
  3.  $this->set('advert', $advert[0]);
  4. }
Data 2009.04.03 Komentarai 0 Kategorija CakePHP Žymės ,

table td parametrų nustatymas per $html->tableCells()

Kartais formuojant rezultatų lentelę tenka stulpeliui nustatyti atskirą klasę, stilių. Tai galima padaryti tokiu būdu:

  1. $html->tableCells(array(
  2.      'Komentaras',
  3.      array('Viso', array('class' => 'itemscount'))
  4. ));

Nuo 1.2 versijos Ticket #2406

Data 2009.03.27 Komentarai 1 Kategorija CakePHP Žymės ,

CakePHP – lengvesnis formos laukų valdymas su $form->inputs()

Dirbant su CakePHP FormHelper jeigu forma turi daug laukų tampa varginantis darbas, o ir kodas tampa ne toks jau gražus.
Paimkim nedidelį pavyzdį:

  1. <?php
  2.  echo $form->create('Demo');
  3.  echo $form->input('Demo.id');
  4.  echo $form->input('Demo.name');
  5.  echo $form->input('Demo.lastname');
  6.  echo $form->input('Demo.phone');
  7.  echo $form->input('Demo.email');
  8.  echo $form->input('Demo.website');
  9.  echo $form->input('Demo.street');
  10.  echo $form->input('Demo.city');
  11.  echo $form->input('Demo.country');
  12.  echo $form->submit('Done');
  13. ?>

Priklausomai nuo šablono (jeigu forma išdėstyta nestandartiškai ar pan.), galima naudot ir:

  1. <?= $form->create('Demo'); ?>
  2. <?= $form->input('Demo.id'); ?>
  3. <?= $form->input('Demo.name'); ?>
  4. <?= $form->input('Demo.lastname'); ?>
  5. <?= $form->input('Demo.phone'); ?>
  6. <?= $form->input('Demo.email'); ?>
  7. <?= $form->input('Demo.website'); ?>
  8. <?= $form->input('Demo.street'); ?>
  9. <?= $form->input('Demo.city'); ?>
  10. <?= $form->input('Demo.country'); ?>
  11. <?= $form->submit('Done'); ?>

Tačiau jeigu šablonas +/- standartinis, užtenka tik CSS stiliaus formavimui, puikus sprendimas būtų naudoti $html->inputs() $form->inputs()

  1. <?php
  2.  echo $form->create('Demo');
  3.  echo $form->inputs(array(
  4.   'Demo.id',
  5.   'Demo.name' => array('label' => 'Vartotojas'),
  6.   'Demo.lastname',
  7.  
  8.   'Demo.country'
  9.  ));
  10.  echo $form->submit('Done');
  11. ?>

Plačiau FormHelper API

Data 2009.03.24 Komentarai 0 Kategorija CakePHP Žymės ,

CakePHP biblioteka #1

1. Puikus rašinys, kaip pagreitinti aplikacijos veikimą. Pagrindas – cache.

2. Trumpas CSS stiliaus gabaliukas, pagerinantis  log informacijos peržiūrą. O jeigu reikia išsamios informacijos (cookie, sesijų reikšmės ir t.t.) – Debug Kit plugin.

3. JQuery naudojimas su CakePHP: I dalis, II dalis.

4. JQuery įskiepis, kuris įjungia submit mygtuką jeigu informaciją į teksto laukelį užpildyta.

5. Šiek tiek SEO, “pagražinant” nuorodas su mod_rewrite