![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 24.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Wiatm,
druga moja prosba o pomoc: Mam skrypt ktory wyswietla 5 najnowszych artykulow do ktorych dodano komentarz. W ponizszym skrypcie niestety jeden artykul pojawia sie tyle razy ile dodano nowych komentarzy. Jesli dodano nowych 10 komentarzy do jednego artykulu - wtedy liste zapelnia jeden artykul w 5 pozycjach (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Dodalem wiec GROUP BY id_s HAVING:
no i w efekcie udalo sie prezentowac jeden tytul artykulu tylko jeden raz, ale pojawil sie inny problem. Mianowicie taki: Jesli dodamy komentarz do artykulu ktory mial juz wczesniej dodany komentarz wtedy artykul nie wskakuje na pierwsze miejsce listy. Wyglada na to skrypt prezentuje pogrupowane artykuly biorac pod uwage pierwszy dodany komentarz a nie ten najnowszy. Moze wiecie jak to rozwiazac ? Ten post edytował graf 24.04.2007, 21:01:27 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Po co cały skrypt, mogłeś podać strukturę tabel bo mi się np. nie chce tego analizować.
zakładam: tabela artykul: id|nazwa tabela komentarz: id|artykul_id|data Zapytanie:
Takie coś powinno działać. EDIT formatowanie + mały błąd Ten post edytował Sedziwoj 24.04.2007, 21:32:21 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 24.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
wiec wyglada to prawie tak jak napisales:
Tabela artykuly: id, tytul Tabela komentarze: id, id_s, data komentarze maja jeszcze status aktywny i nieaktywny: "par" oraz "gdzie" ktory ma zwiazek z przypisaniem komentarzy do galerii czy artykulow. Mam cos takiego:
... nie wiem jak wykorzystac Twoja podpowiedz Sedziwoj:
Kombinuje i gdzies mam caly czas blad (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Ten post edytował graf 24.04.2007, 22:55:37 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
a tak? jak pojawia się jakiś błąd to pisz jaki. Ten post edytował Sedziwoj 24.04.2007, 23:20:49 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 24.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
<?
if($_SESSION['lang'] == 'pl' or !isset($_SESSION['lang'])) { $art_kategorie = "art"; } else { $art_kategorie = ""; } // $q = mysql_query("SELECT id, tresc, gdzie, par, id_s, data FROM komentarze GROUP BY id_s HAVING gdzie='".$art_kategorie."' AND par!='mod' ORDER BY data DESC LIMIT 10"); $strSql = "SELECT * FROM (SELECT `id_s`, max(`data`) AS `maks` FROM `komentarze` GROUP BY `id_s` HAVING gdzie='".$art_kategorie."' AND par!='mod' ORDER BY `maks` LIMIT 5) AS `naj` LEFT JOIN `artykuly` ON (`naj`.`id_s`=`artykuly`.`id`)"; $q = mysql_query($strSql); echo "<ul type='square'>"; while($row = mysql_fetch_array($q)) { echo ""; if($row['par'] == 'mod') { echo ""; } if($row['gdzie'] == 'art') { $art = mysql_query("SELECT id, tytul FROM artykuly WHERE id='$row[id_s]' AND par='' LIMIT 1"); $art = mysql_fetch_row($art); echo "<tr><td style='font-family: Verdana; font-size: 11px; color: black;'> <P style='margin-left:20px; margin-top:0px;'><a href='art.php?id=$art[0]' />$art[1] <font style='color: gray'>[".mysql_num_rows(mysql_query("SELECT id_s, gdzie FROM komentarze WHERE gdzie='art' AND id_s='$art[0]' AND par=''"))."] [...]</font></a>"; } elseif($row['gdzie'] == 'galeria') { $art = mysql_query("SELECT id, tytul FROM galeria WHERE id='$row[id_s]' AND par='' LIMIT 1"); $art = mysql_fetch_row($art); echo "<a href='temp_.php?page=galeria&galeria=".$art['0']."' target='_blank'>".$art['1']."</a>"; } elseif($row['gdzie'] == 'turystyka_miasta') { $art = mysql_query("SELECT id, nazwa FROM turystyka_miasta WHERE id='$row[id_s]' AND par='' LIMIT 1"); $art = mysql_fetch_row($art); echo "Turystyka-miasta: <a href='art_turystyka.php?id=$art[0]' target='_blank'>$art[1]</a></a>"; } elseif($row['gdzie'] == 'pb') { $art = mysql_fetch_assoc(mysql_query("SELECT * FROM `pb_firmy` WHERE `id`='".$row['id_s']."' AND par=''")); echo "<a href='temp_.php?page=katalog_firm&show_comp=".$row['id_s']."'>".$art['nazwa']."</a>"; } echo "</td></tr><tr><td style='border-left-width: 1px; border-right-width: 1px; border-top: 1px solid #000000; border-bottom-width: 1px;'></td></tr>"; } echo '</ul>'; ?>
i wyskakuje blad: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /komentowane.php on line 16 czyli cos tu: while($row = mysql_fetch_array($q)) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 01:37 |