Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zliczanie --> mysql
Forum PHP.pl > Forum > Przedszkole
Gligamesh
witam, posiadam 2 tabele w jednej sa nowinki a w drugiej komentarze do nich, laczone sa po ie tzn id nowinki zapisywane jests w komentarzach.

moje pytanie jes takie, chce zrobic wyswietlenie ilosci wpisanych komentarzy pod nowinka moge uzyc normlanie zapytnia ale wtedy musze je zamknac w petli i kjak jest 50 nowinek to jest ponad 50 zapytan jak zrobic by to ominac questionmark.gif
yavaho
O to chodzi?
  1. <?php
  2. $ID = $ID_nowinki_ktorej_chcesz_zliczyc_ilosc_komentarzy;
  3. $query = &#092;"SELECT * FROM komentarze WHERE ID_nowinki = $ID\";
  4. $ilosc = @mysql_num_rows(@mysql_query($query));
  5. ?>
Bielo
  1. SELECT tytul.nowinki, tresc.nowinki, count(id.komentarze) WHERE ID_nowinki=id.nowinki
Kinool
  1. SELECT count(*) AS ilosc FROM komentarze WHERE komentarze.id_nwsa=8


zwraca liczbe komentarzy dla newsa o numerze 8

jesli chesz zapytanie zwracajace liczbe komentarzy do wszystkich newsow to:
  1. SELECT newsy.id, count(*) FROM komentarze, newsy WHERE komentarze.id_news=news.id_news GROUP BY news.id_news
Gligamesh
nie do konca jak wezme

  1. SELECT count(*) AS ilosc FROM komentarze WHERE komentarze.id_nwsa=8


to zapuytanie musze wykonac 50 razy jak to ominac questionmark.gif


kod newsa

  1. <?php
  2. $zapytanie = &#092;"SELECT * FROM `newsy` ORDER BY ID DESC LIMIT $page , $page1 \";
  3. $wykonaj = mysql_query ($zapytanie);
  4. while($row=mysql_fetch_array ($wykonaj)) 
  5. {
  6. $news= str_replace (&#092;"|^|\", \"'\", $row[2]); 
  7. echo&#092;" <table border=\"0\" width=\"100%\"><tr><td width=\"100%\" colspan=\"2\"> 
  8. <img src=engine/img/news_ico.gif align=bottom><b>$row[1]</b></td></tr><tr><td width=&#092;"100%\" colspan=\"2\"> 
  9. <p align=&#092;"justify\">$news</td></tr><tr><td width=\"70%\"> <font size=\"1\">\"; 
  10. if($row[4]==&#092;"\")
  11.  { echo&#092;"\"; } 
  12.  else 
  13.  { 
  14.  echo &#092;"Wi&ecirc;cej informacji:<a target=\"_blank\" href=http://$row[4]> $row[5]</a></font>\"; } 
  15. echo &#092;"</td> <td width=\"30%\"><font size=\"1\"><p align=\"right\">Autor: $row[3]</font></p></td></tr></table><hr size=\"1\">\";
  16. }
  17. ?>
Kinool
po pierwsze jesli korzystasz z funkcji mysql_fetch_array" title="Zobacz w manualu PHP" target="_manual to do zmiennych odwoluj sie przez tablice asocjacyjna (bynajmniej dlamnie jest tak latwiej! ale co kto lubi):

  1. <?php
  2.  
  3. $wynik = mysql_fetch_array($rezultat);
  4. echo $wynik['nazwa_pola_w_bazie'];
  5.  
  6. ?>


co do zapytana to sprawdz to co podalem tyle ze pobieraj wszystko z tablicy news (jesli jest ci wszystko potrzebne)

  1. SELECT newsy.*, count(*) AS ilosc FROM komentarze, newsy WHERE komentarze.id_news=news.id_news GROUP BY news.id_news
Gligamesh
w kturym miejscu mam to umiescic?? jest mi potrzebne tylko id newsa nic wiecej
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.