聘我网

新概念招聘3.0

sql 查询与分页问题

vote up0vote downstar
我有三个表:

table1 id a1 a2 a3 a4 数据略
table2 id b1 b2 b3 b4 数据略
table3 
id table2_id  table1_id    
 1     1         4     
 2     1         6   
 3     1         2   
 4     2         1    
 5     2         7
我要在表三里查询出table2id为1的所有的table1id 数据,然后查table1里所对应的数据,然后输出出来,
sql语句:

 select table1.* from table1 left join table3 on table1.id=table3.table1_id where table3.table2_id=1

可是我的分页不能用这个函数,不知道为啥,下面是代码:
include "breakpage.php";


$sql="select applicatinfo.*  from  applicatinfo left join favorites on reg_id=favorites.reg_id where favorites.worker_id='$overlooker_id'";
                                        }
                                                   $temp = page1($sql,$wa);
                    $param1="seafg=".$seafg;//传送的参数
                    $param=setParam($param1);

pag2(2);//调用分页函数显示分页

分页函数breakpage.php如下:

<?php
function setParam($param1) 
  {
   return $param1;
 }
function page1($sqlstr,$wa)//分页的第一个处理程序,用来处理一系列环境变量.
   {
 global $rows_num,$page,$pages_num,$per_page,$rows_offset,$per_screen,$param;
    if($wa==""){$wa=14;}
    if (!isset($page)) $page=1;//第几页
    if (!isset($rows_offse)) $rows_offse=2; //每页起始偏移
    if (!isset($per_screen)) $per_screen=3;//分页样式2  显示的页数
    if (!isset($per_page)) {$per_page=$wa;}//每页记录行数. 
 $query=mysql_query($sqlstr);
 $rows_num=mysql_num_rows($query); 
 //echo"rows_num=".$rows_num;


 $pages_num = ceil(($rows_num-$rows_offset)/$per_page);//总页数=(总行数-每页起始偏移)/每页显示的行数 取整
 $str= $sqlstr." limit ".(($page-1)*$per_page+$rows_offset).", ".$per_page;//根据要求查询数据库
 return mysql_query($str);    
   }
function page2($style=2)
   {
    global $rows_num,$page,$pages_num,$per_page,$rows_offset,$param,$per_screen;
     $font_size="10pt"; 
    switch($style)
     {
    case 2:
       /* 样式2:  共 记录 第一页 上一页 6 7 8 9 10 11 12 13 14 15 16 17 18 下一页 最后页 */
     $mid = ceil(($per_screen+1)/2);//中间数=(每页显示的页数+1)/2  取整
     $nav = '';//清空要输出的字符
    // $param=setParam($param1) ;
    // echo "param=".$param;

     if($page<=$mid ){$begin = 1;}//如果当前页数小于中间数,开始页数等于1
    else {
                   if($page > $pages_num-$mid) //如果当前页数大于总页数减去中间数 
                    {
                     $begin = $pages_num-$per_screen+1;//开始页=总页数-显示的数字+1
                     }
                   else
                    {
                     $begin = $page-$mid+1;//开始页=当前页-中间数+1
                     }
                }
        //      echo"*$aa,*$select_name,*$select1,*$select2,+$select3,";
     if($begin<0) $begin = 1;
    // $nav .="<span style='font-size=$font_size;'>共".$rows_num."记录</span> ";
     if(($begin ==1))//
        //$navs = "<a href='?$param'> <img  src='../Images/UP.jpg' width='106' height='20' align='absbottom' border='0'  /></a> ";


    if($page==1)
        $navs = "<img  src='../Images/UP.jpg' width='106' height='20' align='absbottom' border='0' title='当前是第一页'  />";
        $end =   ($begin+$per_screen  >  $pages_num)   ? $pages_num+1:$begin+$per_screen;//


     if($page>1)
        $navs .= "<a href='?$param&page=".($page-1)."' title='第".($page-1)."页'><img  src='../Images/UP.jpg' width='106' height='20' align='absbottom' border='0'  /></a>";
        $end = ($begin+$per_screen>$pages_num)?$pages_num+1:$begin+$per_screen;
     for($i=$begin; $i<$end; $i++) 
     {

      $nav .=($page!=$i)?"<a href='? $param&page=$i ' title='第{$i}页'><span style='font-size=$font_size;'>$i</span></a> ":"<span class='current'>$i</span> ";//选择语句
     }
    if($page<$pages_num)
       $nave="<a href='?$param&page=".($page+1)."' title='第".($page+1)."页'><img  src='../Images/down.jpg' width='106' height='20' align='absbottom' border='0'  /></a> ";

     if($page >= $pages_num)
       $nave="<img  src='../Images/down.jpg' width='106' height='20' align='absbottom' border='0' title='当前是最后一页' />";

  // if($end!=$pages_num+1)
    //   $nav.="<a href='?$param&page=$pages_num' title='第{$pages_num}页'> <span style='font-size=$font_size;'>最后页</span></a>  ";
   // echo"*$param , *$i , *$select_name , *$select1 ,*$select2 ,* $select3#";
    break;

     default:
     $nav = '';
   }  

   $nav="<td width='18%' align='right'>".$navs."</td><td width='14%' ><div class='manu'>".$nav."</div></td><td width='13%' tdalign='left' >".$nave."</td>";
  echo "$nav";
   }

//--------------------------------------------------end 分页函数-----------------------------

?>
 
6
请重新概括问题。。。 - Shore 2009-11-25, 04:42

您的回答





不是您要找的问题? 浏览其他含有标签 的问题或者 自己问个.