Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> while i SELECT COOUNT(*)
Apo
post
Post #1





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

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


Witam
Chciałem policzyć ile jest komentarzy dla danego posta więc napisałem tak:

  1. <?php
  2. $users = $db -> query( 'SELECT id, data, tytul, wpis FROM newsy ORDER BY id DESC LIMIT 5');
  3.  
  4. while($array = $db -> fetch_row())
  5. {
  6. $ile = $db -> query( 'SELECT COUNT(*) FROM coments WHERE id='.$array['id'] );
  7.  
  8. $tytul = $filtr -> odczyt( $array['tytul'], 0 );
  9. $wpis = $filtr -> odczyt( $array['wpis']);
  10.  
  11.  
  12. $tmp_news -> blocks = array('tytul' => '<a class="linktitle" href="index.php?id=news&nr='.$array['id'].'">'.$tytul.'</a>', 'data' => date('d F Y - H i', $array['data']), 'tresc' => $wpis, 'komentarze' => $ile);
  13. $tmp_news -> parse();
  14. echo $tmp_news -> parsed;
  15. }
  16. ?>


Te obiekty $db nie mają tu znaczenia. Problem jest w tej linijce:
  1. <?php
  2. $ile = $db -> query( 'SELECT COUNT(*) FROM coments WHERE id='.$array['id'] );
  3. ?>

No i nie wiem jak to rozwiązać (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Cytat
Nie do końca bo kolega chce zliczyc liczbe komentarzy jedynie pieciu ostatnich newsow.


Mozna np tak.
  1. SELECT newsy.id, newsy.DATA, newsy.tytul, newsy.wpis t.ilosc
  2. FROM newsy LEFT JOIN (SELECT COUNT(*) AS ilosc, id_newsa
  3. FROM coments GROUP BY id_newsa) t ON (newsy.id = t.id_newsa) ORDER BY newsy.id DESC LIMIT 5
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: 12.10.2025 - 15:05