2011-03-20 72 views
-3

我使用的分頁腳本由於某種原因不顯示帖子。它不顯示任何內容,沒有以前的鏈接,沒有下一個鏈接,沒有實際的東西從MySQL數據庫。該頁面不是白色屏幕,頁面上的其他所有內容都可以正常工作。如果有人能幫助我,這將是非常棒的。PHP分頁腳本不起作用

<?php 
session_start(); 
include "config.php"; 
if($_SESSION['usrid']){ 
database_connect(); 
$sql = 'SELECT id FROM posts limit '.($page*$eachPage).','.$eachPage; 

$sql_count = 'SELECT id FROM posts'; 
       if(isset($_GET['page']) AND ctype_digit($_GET['page'])) { 

    $page = $_GET['page'];  
} 
else{ 

    $page = 0;  
} 

if(!$res = mysql_query($sql)) { 

    trigger_error(mysql_error().'<br />In query: '.$sql); 
} 
elseif(mysql_num_rows($res) == 0) { 

    echo 'No posts found'; 
} 
else { 

    while($row = mysql_fetch_assoc($res)) { 
    $posttime = date("F j \a\t g:i a", strtotime ($row [ 'time' ])); 
     ?> 
     <div class="t"><p id="i"><?php echo $row['post']; ?><br /><b class="oinf">By <a href="profile.php?id=<?php echo $row['id']; ?>" class="od"> on <?php echo $posttime; ?></a></b></p></div><br /><br /> 
    <?php 
    } 

    if($res = mysql_query($sql_count)) { 

     $results = mysql_num_rows($res); 
    } 
    $pages = ceil($results/$eachPage); 

    if($page > 0) { 

     echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($page-1).'">[Previous]</a>'; 
    } 
    else{ 

     echo '[Previous]'; 
    } 

    for($i = 1; $i <= $pages; $i++) { 

     echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($i-1).'">'.$i.'</a>'; 
    } 

    if(($page+1) <= ($results/$eachPage)) { 

     echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($page+1).'">[Next]</a>'; 
    } 
    else{ 

     echo '[Next]'; 
    } 
} 

      }else{ 

      };?> 

編輯:我知道嘗試用於調試的代碼,但它給了我同樣的結果如上,它不會顯示帖子:

if($_SESSION['usrid']){ 
    database_connect(); 
    $navquery = "SELECT * from posts"; 
$navresult = mysql_query($navquery) or die(mysql_error()); 
while ($row = mysql_fetch_assoc($navresult)) { 
    ?> 
    <div class="t"><p id="i"><?php echo $row['post']; ?><br /><b class="oinf">By <a href="profile.php?id=<?php echo $row['id']; ?>" class="od"> on <?php echo $row['time']; ?></a></b></p></div><br /><br /> 
    <?php 
}; 
}; 
+4

這是**糟糕的**:'。你應該通過['header()'](http://php.net/manual/en/function.header.php)使用HTTP重定向。 – meagar 2011-03-20 15:48:26

+0

「它什麼都沒有顯示」你的意思是你得到一個空白的白屏? – Kaivosukeltaja 2011-03-20 15:54:35

+0

好的,我改變了這一點,但這不會幫助我解決我的問題。謝謝您的好意。 – 2011-03-20 15:55:04

回答

0

我得到它的工作,我忘了}

0

迴應此SQL查詢並找出您的腳本無法正常工作的原因。

$sql = 'SELECT id FROM posts limit '.($page*$eachPage).','.$eachPage; 

返回:

SELECT id FROM posts limit , 

由於$page並沒有定義$eachPage。那些應該來自$_GET?因爲有人實際上可以做到這一點:

/mypage?page=0&eachPage=;DELETE FROM posts; 

而你沒有做任何事情來防止發生。

+0

請看我的回答,我決定不再使用這個分頁腳本。 – 2011-03-20 17:50:06