Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PDO i smarty
Forum PHP.pl > Forum > PHP
boosik01
Cześć. Mam małe pytanie, pobieram dane za pomocą PDO:

  1.  
  2. $q = $pdo->query(SELECT * FROM chat);
  3.  
  4. foreach($q as $r){
  5.  
  6. $x = $r[''];
  7. }
  8. $temp->assign("x", $x);
  9.  


I przekazuje wyświetlenie wyników do tpl:

  1. {section name=x loop=$x}
  2. <i>{$x[x].sender}</i>
  3. <b>{$x[x].text}</b>
  4. <br />
  5. <br />
  6. {/section}


Lecz nie wyświetla mi żadnych danych. Jeśli w $r[''] dodam pole z bazy, np. sender (całość: $r['sender']) to dane jest wyświetlane poprawne więc pobierać, pobiera mi dane, lecz coś nie chce mi wyświetlić ich za pomocą pętli. Siedzę na tym już z 1h i nic mi ni wychodzi, bardzo proszę was o pomoc. Z góry dziękuję ;-)
nospor
$x = $r['']; - skądżeś to wytrzasnął?
Nie dość ze $x ciągle nadpisujesz, to przypisujesz mi nieistniejący indeks z $r....


Tak ma być
$x[] = $r;
$x to tablic wielowumiarowa do której dodajesz tablice. Dodajesz a nie nadpisujesz. To jest różnica.

A potem w smarty tak ma byc:
Kod
{foreach from=$x item=v}

    <i>{$v.sender}</i>

    <b>{$v.text}</b>              

    <br />

    <br />

{/foreach}
boosik01
Dzięki! wink.gif

Mam jeszcze jedno pytanie. A mianowicie potrzebuje z includować plik php w pliku tpl. Lecz include_php file nie działa.
Jak to zrobić ?
Potrzebuje to do chatu, który później za pomocą ajaxa będę przeładowywał dane.

Ma to wyglądać mniej więcej tak:

plik tpl:
  1. <div id='chat'>
  2. include
  3. </div>
  4. // tu pole text i submit do wysłania


plik php get.php (pobierający dane)
  1. $sql = "SELECT * FROM chat";
  2.  
  3. $q = $pdo->query($sql) or die("failed!");
  4.  
  5. foreach($q as $r){
  6.  
  7. $x[] = $r;
  8. }
  9.  
  10. $temp->assign("x", $x);
  11.  
  12. $temp->display('get.tpl');


No i jeszcze w pliku get.tpl wyświetlenie danych.

Chciałem to zrobić że po prostu zrobię include pliku tpl, lecz to nie zadziała bo nie będzie odwołania do pliku php. Można to jakoś obejść, proszę o jakieś rady/sugestie.
Tajgeer
Nie działa, to znaczy co się dzieje?
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.