Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kohana i wyniki zapytania do bazy
Forum PHP.pl > Forum > PHP
jajcarzd1
Witam

Mam takie pytanie. Otóż wykonuję proste zapytanie do bazy:

  1. $this->db = new Database;
  2. $this->db->from('test');
  3. $this->db->select();
  4.  
  5. $result = $this->db->get();


i teraz pytanie jak mogę podejrzeć wszystkie wyniki z zapytania ? Pisząc nie we frameworku mając wyniki w postaci tablicy robiłem zwykłego print_r i miałem wszystko jak na dłoni. Czy chcąc zobaczyć wszystkie wyniki muszę poprostu przelecieć w pętli:

  1. for($i=0,$ii=count($result);$i<$ii;$i++) {
  2. echo Kohana::debug($result[$i])."<br>";
  3. }


Sprawa nr 2 w jaki sposób mogę operować na wynikach zapytania aby je zaktualizować ? Załóżmy że potrzebuję do każdego obiektu wynikowego dodać jakieś pole np:

  1. for($i=0,$ii=count($result);$i<$ii;$i++) {
  2. $result[$i]->test = 'a';
  3. echo Kohana::debug($result[$i])."<br>";
  4. }
  5.  



Niestety echo debuga w kolejnej linijce pokazuje mi tylko pola z bazy.

Będe wdzięczny za wszelkei sugestie.
Pozdrawiam
phpion
Aby zwrócić tablicę rekordów użyj:
  1. $result = $this->db->get()->result_array();

Domyślnie zwróci to tablicę obiektów. Jeśli chcesz otrzymać tablicę asocjacyjną podaj parametr FALSE dla result_array().
jajcarzd1
Ok

Dzięki serdeczne. A co to wyświetlania sumarycznych wyników to jak rozumiem, muszę sam przelecieć po pętli ? Sprawa nr dwa bo tak na razie lawiruję pomiędzy kohana 2 i 3 i w tej dość lakonicznej dokumentacji którą znalazłem na

http://www.kerkness.ca/wiki/doku.php?id=cr...e_query_builder ,

widzę że nigdzie nie używa się instacji klasy Database, tylko wszędzie są odwołania statyczne. Poza tym próbując zdefinować normalny obiekt new Database dostałem errora. Więc pytanie czy w wersji 3 można się tylko odwoływac statycznie ?


Jeszcze jedno pytanie wtrącę definiując jakiś wpis w sesji typu

  1. Session::instance('database')->set('user', array('id'=>10,'name'=>'andres'));


Czy mogę się odwołać jakoś bezpośrednio to wartości 'name' co w normalnej sesji wygladałoby tak $_SESSION['user']['name'], bo jakoś nie widzę tu za bardzo możliwości. Muszę chyba robić tak

  1. $v = Session::instance('database')->get('user');
  2. echo $v['name'];



Dzięki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.