Проблем с изваждане от DB!

Styl3rbg

Registered
PHP:
   <?php
        $runq = mysql_query("SELECT * FROM `posts`");
        $pageNum = mysql_num_rows($runq);
        $limit = 8;
        if((int)$_GET['page']>0) {
            $page = (int)$_GET['page'];
        }
        else {
            $page = 0;
        }
        $maxPages = ceil($pageNum/$limit);
        $runq = mysql_query("SELECT * FROM `posts` ORDER BY post_id DESC LIMIT ".$limit*$page.", ".$limit."") or die (mysql_error());
        while($row = mysql_fetch_assoc($runq)) {
            echo '		
				<div class="menu_head_style">
		<h3 class="titlelink"><a href="preview.php?article='.$row['post_id'].'">'.$row['title'].'</a></h3>
		</div>
		<div class="menu_style">
			<div class="pad">'.$row['content'].'</div>
		<div style="color: #000; background: #e7e7e7; border: 1px solid #e0e0e0; padding: 3px 0 3px 0; border-left: none; border-right: none; border-bottom: none;">
			<table width="100%" border="0">
				<tr>
					<td style="text-align: left; font: 11px verdana; ">Категория
: <a href="index.php?news=cats&cat=3"><b>';     if($row['cat'] == 1) {
      $cat = 'За сайта';
echo"$cat";}
 if($row['cat'] == 2) {
      $cat = 'За мен';
echo"$cat";}
echo'</b></a></td>
					<td style="text-align: left; font: 11px verdana;">Oт: <i>'.$row['added'].'</i></td>
					<td style="text-align: right;  font: 11px verdana; "><a href="preview.php?article='.$row['post_id'].'" style="color: #000; text-decoration: none; font: 12px arial;">Коментари
(<span style="font: bold 13px verdana; color: #333;">';

$post_id = $row['post_id'];
 $runq = mysql_query("SELECT * FROM `commenta` WHERE post_id='$post_id'") or die (mysql_error());
                        $uNum = mysql_num_rows($runq);
                        echo "$uNum";
echo '</span>)</a></td>
				</tr>
			</table>
		</div>
		</div>';
        }
        ?><br /><br /><br /><div class='pages'>
    <span style='font: 11px arial; color: #333;'><?
    
        if($data['cat'] == $id) {
        for($i=0;$i<$maxPages;$i++) {
            echo " [<a href='music.php?&page=".$i."'> ".($i+1)."</a> ]  ";
       }
	   }
        ?></div>
Това е кода, но показва само последната новина и не листва т.е. не страницира?
Ето реално демо:
http://penchev-bg.eu/s/
 
Само първо по кода - като защита (int) няма да ти свърши работа вместо това го ползвай с функцията is_numeric за да се допълнят.
Тоест инт не проверява дали променливата ти съдържа число а само връща да ако има и не ако няма.
Поправи ме ако греша ама ти казваш на заявката да ти извади 8страници по 1 резултат.
Пробвай:
[sql]$runq = mysql_query("SELECT * FROM posts GROUP BY id DESC")[/sql]
 
Не съм преглеждал кода (нямам време) ,но забелязах че $runq се повтаря 3 пъти (може и повече) ,виж дали някаде не се бърка просто логиката :)
 
Styl3rbg каза:
А това кое от всичко runq е първото? второто? третото?
Аз промених първото, но не е добре да има еднакви променливи, защото се заменят. Следи си логиката и ги промени.
 
xmmm каза:
Не съм преглеждал кода (нямам време) ,но забелязах че $runq се повтаря 3 пъти (може и повече) ,виж дали някаде не се бърка просто логиката :)
Оппп беше прав направих ги runq1,2,3 и се оправи мерси :)
ПП: Скрипта го правих преди време и не съм го поглеждал :)
 

Back
Горе