设为首页收藏本站

PHP开源论坛

 找回密码
 注册

人人连接登陆

无需注册,直接登录

用新浪微博连接

一步搞定

QQ登录

只需一步,快速开始

查看: 2878|回复: 5

[PHP开发] php 分页 发生错误  关闭 [复制链接]

Rank: 1

发表于 2010-4-13 15:32:37 |显示全部楼层
1金钱
代码如下:
<?php
    //---------------------连接数据库---------------------//
    include 'conn.php';
    $pagesize = 8;  //每页显示的记录条目数
    //$url = $_SERVER['REQUEST_URI'];
    //$url = parse_url ($url);
   //$url = $url['path'];

   $result = mysql_query ('select * from user');
  $num =mysql_num_rows ($result);    //总记录条目数


  //-------------------页面是否被设置过--------------//
  if ($_GET['page'])
  {
     $pageval = $_GET['page'];
    $page = ($pageval-1)*$pagesize;  //$page是偏移量
}
  $pages = ceil($num/$pagesize);   //$pages是总页数



//-------------------与总记录数的比较-------------//
if ($num > $pagesize)
{
     if ($pageval <= 1)
  {
      $pageval = 1;
  }
  if ($pageval >= $pages)
  {
      $pageval = $pages -1;
  }
  $aa = $pages - 1;
  echo "共 $num 条记录 |第{$pageval}页|共有".$aa."页| >>>>>";
  echo "<a href=fenye.php?page=".($pageval-1).">上一页</a>--<a href=fenye.php?page=".($pageval+1).">下一页</a><br /><br />";
}
//************************************************//


$sql = "select * from user limit $page ,$pagesize";
$query = mysql_query ($sql);


//echo var_dump($query);
//---------------------显示-----------------------//
//echo "<table border='1' bordercolor='red' width='80%' align='center'>";  //画一个表格

//***********************报错行start*********************//
while ($row = mysql_fetch_array ($query))        //这行老是报错
//***********************报错行end*********************//


{
     /*for ($lien = 1;$lien <= $pagesize;$lien++)
  {
      $color = ($lien % 2)?"red":"yellow";   //定义颜色
         echo "<tr bgcolor=".$color."><td>".$row[0]."</td><td>".$row[1]."</td><td>".$row[2]."</td></tr>";
  }*/
  echo '<hr />'.$row[0]." | ".$row[1]." | ".$row[2]."<hr />";
}
//echo "</table>";    //表格结束
?>

最佳答案

offar 查看完整内容

在42行加上mysql的错误输出, $query = mysql_query ($sql) or die(mysql_querry); 这样就会把sql的错误显示出来, 调试方法很重要,另外你也可以在此之前把sql输出看看mysql_query执行的sql是什么。 这样就可以很清楚的看到错误所在。 希望对你有所帮助。

使用道具 举报

Rank: 7Rank: 7Rank: 7

发表于 2010-4-13 15:32:38 |显示全部楼层
在42行加上mysql的错误输出,

$query = mysql_query ($sql) or die(mysql_querry);

这样就会把sql的错误显示出来,
调试方法很重要,另外你也可以在此之前把sql输出看看mysql_query执行的sql是什么。
这样就可以很清楚的看到错误所在。
希望对你有所帮助。
PHP开源网:http://www.php-open.org

使用道具 举报

Rank: 1

发表于 2010-4-13 15:48:19 |显示全部楼层
回复 1# shijiaoliang

代码如下:
  1. <?php
  2.     //---------------------连接数据库---------------------//
  3.     include 'conn.php';
  4.     $pagesize = 8;  //每页显示的记录条目数
  5.     //$url = $_SERVER['REQUEST_URI'];
  6.     //$url = parse_url ($url);
  7.    //$url = $url['path'];

  8.    $result = mysql_query ('select * from user');
  9.   $num =mysql_num_rows ($result);    //总记录条目数


  10.   //-------------------页面是否被设置过--------------//
  11.   if ($_GET['page'])
  12.   {
  13.      $pageval = $_GET['page'];
  14.     $page = ($pageval-1)*$pagesize;  //$page是偏移量
  15. }
  16.   $pages = ceil($num/$pagesize);   //$pages是总页数



  17. //-------------------与总记录数的比较-------------//
  18. if ($num > $pagesize)
  19. {
  20.      if ($pageval <= 1)
  21.   {
  22.       $pageval = 1;
  23.   }
  24.   if ($pageval >= $pages)
  25.   {
  26.       $pageval = $pages -1;
  27.   }
  28.   $aa = $pages - 1;
  29.   echo "共 $num 条记录 |第{$pageval}页|共有".$aa."页| >>>>>";
  30.   echo "<a href=fenye.php?page=".($pageval-1).">上一页</a>--<a href=fenye.php?page=".($pageval+1).">下一页</a><br /><br />";
  31. }
  32. //************************************************//


  33. $sql = "select * from user limit $page ,$pagesize";
  34. $query = mysql_query ($sql);


  35. //echo var_dump($query);
  36. //---------------------显示-----------------------//
  37. //echo "<table border='1' bordercolor='red' width='80%' align='center'>";  //画一个表格

  38. //***********************报错行start*********************//
  39. while ($row = mysql_fetch_array ($query))        //这行老是报错
  40. //***********************报错行end*********************//


  41. {
  42.      /*for ($lien = 1;$lien <= $pagesize;$lien++)
  43.   {
  44.       $color = ($lien % 2)?"red":"yellow";   //定义颜色
  45.          echo "<tr bgcolor=".$color."><td>".$row[0]."</td><td>".$row[1]."</td><td>".$row[2]."</td></tr>";
  46.   }*/
  47.   echo '<hr />'.$row[0]." | ".$row[1]." | ".$row[2]."<hr />";
  48. }
  49. //echo "</table>";    //表格结束
  50. ?>
复制代码
浏览器提示错误如下:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in F:\AppServ\www\fenye.php on line 48

使用道具 举报

Rank: 1

发表于 2010-4-13 15:50:49 |显示全部楼层
呵呵 谢谢
嗯嗯 我去试试

使用道具 举报

Rank: 7Rank: 7Rank: 7

发表于 2010-4-13 16:22:37 |显示全部楼层
问题已经回复,请确认

使用道具 举报

Rank: 1

发表于 2010-4-24 12:18:13 |显示全部楼层
回复 3# offar

最佳答案

使用道具 举报

您需要登录后才可以回帖 登录 | 注册 人人连接登陆

Archiver|手机版|PHP开源网 ( 豫ICP备08005353号 )   

GMT+8, 2012-5-21 03:04

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部