PHP liczba postów problem

0

Mam skrypt:
(session_start() jest w skrypcie pobierającym klase)


<?php class Tematy { public function pokazTematy() { $connect = mysql_connect('localhost', 'student', 'student')or die('xxx'); mysql_select_db('student')or die('xxxxx'); mysql_query("SET NAMES 'utf8'"); $zapytanie = "SELECT id_tematu,nazwa_tematu, data_tematu,autor_tematu FROM forum_tematy ORDER BY data_tematu DESC"; // DATE_FORMAT (data_tematu, '%b %e %Y at %r') AS format_data_tematu // data_tematu $show1 = mysql_query($zapytanie)or die('xxx 1'); if(mysql_num_rows($show1) < 1) { print 'NIE MA ŻADNYCH TEMATÓW !!!'; } else { //////////////////////////*/ TABELA *//////////////////////////////////////////////////////////// print ''; print '
'; print '
'; print 'TEMATY'; print ''; print 'LICZBA POSTÓW'; print '
'; print $wiersz['nazwa_tematu'].'
'; print 'UTWORZONO -> '.$wiersz['data_tematu'].'
'; print 'PRZEZ -> '.$wiersz['autor_tematu']; print '
'; } // while $zapytanie = "SELECT COUNT(id_postu) AS 'liczba_postów' FROM forum_posty WHERE id_tematu = '".$id_tematu."'"; $show2 = mysql_query($zapytanie)or die('xxx 2'); while ($wiersz = mysql_fetch_array($show2,MYSQL_ASSOC)) { print $wiersz['liczba_postów'].'
'; // nie wyświetla print 'ZOBACZ'; print '
'; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// print '
'; print '</span>'; } mysql_close($connect); } // pokażtematy koniec } // koniec tematy ?>

problem polega na tym, że w pierwszym temacie liczba postów się wyświetla a w drugim temacie liczba postów się nie wyświetla ani nawet napis "zobacz", w tabeli w bazie danych jest wszystko dodane zatem to powyższy skrypcik pobiera dane tylko w pierwszym temacie. Pytanie dlaczego ???
podaje link:
http://155.158.112.141/~student/Projekty/radoslawchojnacki/forum/forum.php
jak widać jedna strona tabeli nie jest w pełni zapisana a chciałbym żeby była ;-(

0

Sprawdź w bazie czy dla tematu "Temat testowy 2" masz poprawną wartość pola id_tematu

0

id_tematu w tabelach -> forum_post i forum_tematy wynosi: "10, dla Temat testowy 2"

0

Masz pierwsza petle while zakonczona w zlym miejscu. Poprawka nizej

                    while($wiersz = mysql_fetch_array($show1,MYSQL_ASSOC)) {
                    $id_tematu = $wiersz['id_tematu'];
                    print '<tr><td>';
                    print $wiersz['nazwa_tematu'].'<br/>';
                    print 'UTWORZONO -> '.$wiersz['data_tematu'].'<br/>';
                    print 'PRZEZ -> '.$wiersz['autor_tematu'];
                    print '</td><td style="text-align:center;">';
                               <b>* nie tutaj powinno to byc!!!     } * while</b>
                                   
                   
    $zapytanie = "SELECT COUNT(id_postu) AS 'liczba_postów' FROM forum_posty WHERE id_tematu = '".$id_tematu."'";
                                                   
                    $show2 = mysql_query($zapytanie)or die('xxx 2');                

                   
                                    while ($wiersz = mysql_fetch_array($show2,MYSQL_ASSOC)) {
                                   
                                            print $wiersz['liczba_postów'].'<br/>';    // nie wyświetla
                                            print '<a style="text-decoration:none;" href="pokazpost.php?id_tematu='.$id_tematu.'">ZOBACZ</a>';
                                    print '</td></tr>';
                                    } 

} // while - tylko tutaj !!!!

0

Dzięki, ano wszystko jest takie proste jak się już wie [browar]
a czasami to na najprostsze, RZeczy najtrudniej wpaść

1 użytkowników online, w tym zalogowanych: 0, gości: 1