Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [zend] wyswietlanie polaczonych danych z dwoch tabell
nieraczek
post
Post #1





Grupa: Zarejestrowani
Postów: 405
Pomógł: 6
Dołączył: 12.01.2007

Ostrzeżenie: (0%)
-----


Odnośnie tego co pisał batman i thm w innym moim poście chciałbym zrobić teraz poprawne pod względem technicznym wyświetlanie połączonych danych z dwóch tabel.

Powiem co zrobiłem:

W folderze 'models' utworzyłem pliki:

Ksiazki.php:
Kod
<?php

class Ksiazki extends Zend_Db_Table
{
    protected $_name = 'ksiazki';

    protected $_primary = 'id_ksiazki';
}


Autorzy.php:
Kod
<?php

class Autorzy extends Zend_Db_Table
{
    protected $_name = 'autorzy';

    protected $_primary = 'id_autora';
}


Natomiast w pliku IndexController.php mam:
Kod
    public function indexAction()
    {
        $db = Zend_Registry::get('dbAdapter');

        $select = $db->select()
             ->from(array('k' => 'ksiazki'))
             ->join(array('a' => 'autorzy'),
             'k.id_autora = a.id_autora');

        $this->view->lista = $db->fetchAll($select);
    }



A w innym pliku wyświetlam wyniki zapytania. Wszystko działa, ale jak widzicie w pliku 'IndexController.php' nie robię chyba zbyt poprawnym sposobem przynajmniej takie odniosłem wrażenie po wypowiedzi batmana i thm??

Więc jak to powinno wyglądać prawidłowo ? Jak rozumiem powinno być w pliku IndexController.php coś takiego:
Kod
    public function indexAction()
    {
               $ksiazkiTabela = new Ksiazki();
               $autorzyTabela = new Autorzy();

    }


Ale co dalej - jak zrobić SELECTA ? Bo jak zrobię tak jak na tej stronie: http://framework.zend.com/manual/en/zend.d...t.building.join

// Create the Zend_Db_Select object
$select = $db->select();

to wrócę przecież do tego sposobu wyświetlania, który mam obecnie, a który nie jest podobno poprawny.

Ten post edytował nieraczek 23.10.2008, 18:25:41
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
MakeArt
post
Post #2





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 7.04.2008

Ostrzeżenie: (0%)
-----


Dzieki. kurcze zwraca...
  1. <?php
  2. array(2) {
  3.  [0] => array(5) {
  4.    ["IdProjektu"] => string(1) "1"
  5.    ["Tytul"] => string(51) "Aplikacja wspomagająca badania literaturowe BadLit"
  6.    ["DataUtworzenia"] => string(10) "2008-10-15"
  7.    ["IdRodzaju"] => string(1) "1"
  8.    ["NazwaRodzaju"] => string(29) "Praca dyplomowa - in?ynierska"
  9.  }
  10.  [1] => array(5) {
  11.    ["IdProjektu"] => string(2) "23"
  12.    ["Tytul"] => string(19) "Suwnica przemys?owa"
  13.    ["DataUtworzenia"] => string(10) "0000-00-00"
  14.    ["IdRodzaju"] => string(1) "2"
  15.    ["NazwaRodzaju"] => string(29) "Praca dyplomowa - licencjacka"
  16.  }
  17. }
  18. ?>

Mam podpięte SMARTY, może w tym jest problem i muszę wyświetlać to innym sposobem niż do tej pory
zwykłe $model->fetchAll().


Namieszałem ze smartym dlatego nie wyświetlało. Dzięki za pomoc!!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 23:42