![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 287 Pomógł: 0 Dołączył: 26.02.2003 Skąd: Ow/Pn Ostrzeżenie: (0%) ![]() ![]() |
Mam problem
![]() Poniższy kod: Kod <?php
@mysql_connect( "localhost", "boya", "boy2ost" ); @mysql_select_db( "boya" ); $wykonaj = mysql_query( "SELECT news.kto kto, news.text text, news.kiedy kiedy, count(k.*) ilosc FROM komentarze k LEFT JOIN knews ON (k.news_id=news.id) GROUP BY k.news_id LIMIT 10;" ); while( $wiersz = @mysql_fetch_array( $wykonaj ) ) { print $wiersz['kto']."n"; print $wiersz['text']."n"; print $wiersz['kiedy']."n"; print $wiersz['ilosc']."n"; } ?> teraz opis co ma robic ten skrypt laczy sie z baza danych boya gdzie sa dwie tabele knews i komentarze struktury tabeli knews id | kto | kiedy | text | komentarze id | id_news | kto | kiedy | gg | mail | wyswietla mi na stronie glownej newsy wraz z licza komentarzy, problem w tym ze ten skrypt nic nie wyswietla i dlaczego moze ktos z was wie ![]() Strona Glowna to z tabeli knews kto text kiedy automatycznie do tego dodaje komentarze (***) komentuj jak widzicie w nawiasie wyzej sa gwiazdki i tam ma byc ilosc komentarzy o konkretnym id (suma komentarzy np o id=12) jak mam napisac skrypt zeby to dzialalo bo rece mi opadaja juz.... POMOCY -------------------- Reklamowa Oklejanie Samochodów: oklejanie pojazdów / tel. 62 597 74 48
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 786 Pomógł: 0 Dołączył: 18.03.2002 Skąd: Wroclaw/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat jak widzicie w nawiasie wyzej sa gwiazdki i tam ma byc ilosc komentarzy o konkretnym id (suma komentarzy np o id=12) jak mam napisac skrypt zeby to dzialalo bo rece mi opadaja juz.... uf. ok troszke sie tego zebralo.
najpierw co wg mnie jest niepoprawnie 1) count(k.*) jest niepoprawne - skoro grupujesz po kolumnie to i count'uj po niej - to wazny blad. 2) troszke nie tak masz tego joina - chyba chciales odwrotnie - newsy i do nich przywiazywac komentarze - a konkretnie ich ilosc. - to tez istotny blad - ale juz projektowy 3) w tym zapytaniu co napisales masz male babole - podczas przepisywania? - (k.news_id=news.id) - a nigdzie nie ma news - wyglada na to ze chodzilo o tabelke knews ktora nie zaliasowales. ergo: poprawilem zapytanie: Kod SELECT
news.kto kto, news.text text, news.kiedy kiedy, count(k.id_news) ilosc FROM knews news LEFT JOIN komentarze k ON (k.id_news = news.id) GROUP BY k.id_news LIMIT 0, 30 pozdrawiam -------------------- .. make web your home ..
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 786 Pomógł: 0 Dołączył: 18.03.2002 Skąd: Wroclaw/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat najpierw co wg mnie jest niepoprawnie aha: najlepiej jest testowac swoje zpaytania nim wrzucimy je do php - najprosicej phpmyadminem ktorego chyba kazdy ma ;)
mozesz tez pokusic sie o wizualnego klienta ktory niczym Enterprise Manager pokaze ci ktory klucz do czego sie odwoluje ;) pozdrawiam -------------------- .. make web your home ..
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 287 Pomógł: 0 Dołączył: 26.02.2003 Skąd: Ow/Pn Ostrzeżenie: (0%) ![]() ![]() |
dzieki uprzejmosci BzikOS-a mam takie cos
Cytat <?php
@mysql_connect( "localhost", "boya", "boy2ost" ); @mysql_select_db( "boya" ); $sql = mysql_query( "SELECT id, kto, text, kiedy FROM knews LIMIT 10" ); while($wiersz = @mysql_fetch_array( $sql ) ) { list($ilosc) = @mysql_query("SELECT count(*) FROM komentarze WHERE news_id=".$wiersz['id'].""); print $wiersz['kto']."n"; print $wiersz['text']."n"; print $wiersz['kiedy']."n"; print $ilosc."n"; } ?> problem w tym ze to mi nie wyswietla $ilosc moze widziec co jest nie tak ![]() -------------------- Reklamowa Oklejanie Samochodów: oklejanie pojazdów / tel. 62 597 74 48
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat dzieki uprzejmosci BzikOS-a mam takie cos
Cytat <?php
// ... list($ilosc) = @mysql_fetch_row(@mysql_query("SELECT count(*) FROM komentarze WHERE news_id=".$wiersz['id']."")); // ... } ?> Tak być powinno. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 786 Pomógł: 0 Dołączył: 18.03.2002 Skąd: Wroclaw/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat Cytat dzieki uprzejmosci BzikOS-a mam takie cos
Cytat <?php
// ... list($ilosc) = @mysql_fetch_row(@mysql_query("SELECT count(*) FROM komentarze WHERE news_id=".$wiersz['id']."")); // ... } ?> Tak być powinno. pozdrawiam -------------------- .. make web your home ..
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat eh a mozna bylo wszystko jednym zapytaniem bylo zrobic... Można...
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 6.07.2025 - 16:34 |