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
tiraeth
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

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


Nadpisujesz uchwyt ostatniego polecenia do SQL (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tzn. nadpisujesz wartości z bazy gdy wykonujesz inne zapytanie nie kończąc poprzedniego...

  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.  $news[] = $array;
  7. }
  8.  
  9. foreach($news as $array)
  10. {
  11. $ile = $db -> query( 'SELECT COUNT(*) FROM coments WHERE id='.$array['id'] );
  12.  
  13. $ile = $ile['COUNT (*)']; // <- zapytanie zwróciło ci tablice z elementem
  14.  
  15. $tytul = $filtr -> odczyt( $array['tytul'], 0 );
  16. $wpis = $filtr -> odczyt( $array['wpis']);
  17.  
  18.  
  19. $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);
  20. $tmp_news -> parse();
  21. echo $tmp_news -> parsed;
  22. }
  23. ?>


Sprawdź
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: 29.12.2025 - 04:49