2014-02-28 15 views
-2

我最近将我的网站移动到新的服务器。网站被移动后,PHP分页停止工作。没有任何代码已经改变。是否需要进行任何配置更改?移动到新服务器后的分页问题

下面是代码:

mysql_connect("host", "username", "password") or die(mysql_error()); 
      mysql_select_db("playstat_page") or die(mysql_error()); 
      //This checks to see if there is a page number. If not, it will set it to page 1 
      if (!(isset($pagenum))) 
      { 
      $pagenum = 1; 
      } 
      //count the number of results 
      $data = mysql_query("SELECT * FROM test") or die(mysql_error()); 
      $rows = mysql_num_rows($data); 
      //number of results displayed per page 
      $page_rows = 20; 
      //page number of our last page 
      $last = ceil($rows/$page_rows); 
      //makes sure the page number isn't below one, or more than our maximum pages 
      if ($pagenum < 1) 
      { 
      $pagenum = 1; 
      } 
      elseif ($pagenum > $last) 
      { 
      $pagenum = $last; 
      } 
      //sets the range to display in our query 
      $max = 'limit ' .($pagenum - 1) * $page_rows .',' .$page_rows; 
      $data_p = mysql_query("SELECT * FROM test ORDER BY ID DESC $max") or die(mysql_error()); 
      while($info = mysql_fetch_array($data_p))     
      { 
      $posted = date('F j, Y g:i a', strtotime($info["Posted"])); 
       Print "<p>{$info["Head"]}</p><br></br>"; 
      } 
      if ($pagenum == 1) 
      { 
      } 
      else 
      { 
      $previous = $pagenum-1; 
      Print "<div id='pagenav'> 
        <ul style='float: left; margin-left: -25px;'> 
         <li><a href='{$_SERVER['PHP_SELF']}?pagenum=1'>First</a></li> 
         <li><a href='{$_SERVER['PHP_SELF']}?pagenum=$previous'>Previous</a></li> 
        </ul> 
       </div>"; 
      } 
      if ($pagenum == $last) 
      { 
      } 
      else 
      { 
      $next = $pagenum+1; 
      Print "<div id='pagenav'> 
        <ul style='float:right'> 
         <li><a href='{$_SERVER['PHP_SELF']}?pagenum=$next'>Next</a></li> 
         <li><a href='{$_SERVER['PHP_SELF']}?pagenum=$last'>Last</a></li> 
        </ul> 
       </div>"; 
      } 
+0

如果分页位于您的代码中,我们将无法告诉您任何内容,因为当您从一个php版本更改为另一个php版本时,可能会有一打可能干扰脚本任何部分的更改 – ITroubs

+0

添加代码,你有什么警告? – cmorrissey

+0

你使用PHP来做你的分页,你是否依赖htaccess?需要更多信息。此刻,你告诉我们这辆车坏了,但不要告诉我们什么坏事。 – MueR

回答

2

很容易。在你的php.ini中必须有这个设置。检查phpinfo()以确保它已启用,请参阅截图。

enter image description here

+0

+1真棒! :D –

2

最有可能的新服务器不具备register_globals开启,而你似乎是从一些变量中获得被请求的页面。

更换

if (!(isset($pagenum))) 
{ 
    $pagenum = 1; 
} 

随着

if (!isset($_GET['pagenum'])) 
{ 
    $pagenum = 1; 
} 
else 
{ 
    $pagenum = intval($_GET['pagenum']); 
} 

编辑:register_globals说,全局通过HTTP请求定义(比如,所有的$ _GET,$ _ POST,..)是自动extract()版(作为示例):

$_GET['pagenum']可以作为$pagenum

将此设置打开通常被认为是错误的做法和错误来源(不提及有关安全性的问题)。

+0

这解决了它。谢谢。对此,我真的非常感激。这让我疯狂! – user3365373

相关问题