用户在前台注册后,会在后台有用户列表,我想在这个列表的前面加个编号,让他显示有多少会员,如下:编号  姓名  姓别
1     A    女
2     B    男
3     C    女
就像这样的编号排序,如果写这个编号所在位置的PHP代码用户列表可能会有很多页,普通写法会不会到第二页就又从1开始记数呢?编号不像ID这样,ID删除后就会少一位,编号是不会少的,所以需要这个功能确实写不出来,才学习PHP,正在长知道的时候,希望大家不要介意小白的这个问题辛苦大家帮忙写一个

解决方案 »

  1.   

    贴出我的代码,编号区已经标注
    <?php for($a11=1,$a11==6,$a++){ ?>
    <?php
    require_once(dirname(__FILE__).'/../config.inc.php');
    require_once(dirname(__FILE__).'/inc/common.php');
    aPurview(302);
    if(empty($do)) $do= '';
    if($do=="sendmail"){
        header("Location: plus_mail.php?members=$members");
        exit;
    }elseif($do=="setsite"){
        $site = intval($site);$id = intval($id);
        $db ->query("update {$cfg['tb_pre']}member set m_site=$site where m_id = $id");
        showmsg('操作成功!',"person_searchlist.php?segment=$segment&keyword=$keyword&operate=$operate&group=$group&page=$page");exit;
    }elseif($do=="reload"){
        $rs = $db->get_one("select g_id,g_term,g_unit from {$cfg['tb_pre']}group where g_typeid=1 and g_isdefault=1 limit 0,1");
        if($rs){
            $groupid=$rs['g_id'];$term=$rs['g_term'];$unit=$rs['g_unit'];$startdate=dtime($fr_time,3);
            switch ($unit){
                case '日':$enddate=date('Y-m-d',strtotime($startdate."+$term day"));break;
                case '月':$enddate=date('Y-m-d',strtotime($startdate."+$term month"));break;
                case '季':$term=$term*3;$enddate=date('Y-m-d',strtotime($startdate."+$term month"));break;
                case '年':$enddate=date('Y-m-d',strtotime($startdate."+$term year"));break;
            }
        }else{
            showmsg('系统配置故障,请联系管理员!','-1');exit();
        }
        $db ->query("update {$cfg['tb_pre']}member set m_groupid=$groupid,m_enddate='$enddate' where DATEDIFF('".date('Y-m-d')."',m_enddate)>0 and m_typeid=1");
        showmsg("操作成功!","person_searchlist.php");exit;
    }else{
    if($do!=''){
        $members=explode(',',$members);
        foreach($members as $k){
            if($do=="del"){
                //整合接口代码
                include_once(FR_ROOT.'/api/api_config.php');
                if(defined('UC_API')){
                    if(FR_API=='uc'){list($uid,$username,$email)=uc_get_user($k);}else{extract(uc_user_get($k));}
                    $ucresult = uc_user_delete($uid);
                    echo $ucresult;
                }
                $db ->query("delete from {$cfg['tb_pre']}myexpert where m_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}myreceive where m_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}interview where i_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}recycle where r_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}myinterview where i_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}education where e_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}training where t_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}lang where l_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}work where w_pmember='$k'");
                $db ->query("delete from {$cfg['tb_pre']}letter where l_member='$k'");
                $db ->query("delete from {$cfg['tb_pre']}resume where r_member='$k'");
                //删LOGO
                $rs = $db->get_one("SELECT `m_id`,`m_logo` FROM `{$cfg['tb_pre']}member` WHERE `m_login`='$k' LIMIT 0,1");
                if($rs){
                    $logo=$rs['m_logo'];
             if($logo!=''&&$logo!='error.gif') unlink(FR_ROOT.$logo);
                }
                //删形象
                $query=$db->query("SELECT `p_filename` FROM `{$cfg['tb_pre']}picture` WHERE `p_member`='$k'");
                while($row=$db->fetch_array($query)){
                    $filename=$row['p_filename'];
             if($filename!=''&&$filename!='error.gif') unlink(FR_ROOT.$filename);
                }
                $db ->query("delete from {$cfg['tb_pre']}picture where p_member='$k'");
                $db ->query("delete from {$cfg['tb_pre']}member where m_login='$k'");
            
            }elseif($do=="picture"){
             $db ->query("update {$cfg['tb_pre']}member set m_logoflag=1 where m_login='$k'");
            }elseif($do=="unpicture"){
             $db ->query("update {$cfg['tb_pre']}member set m_logoflag=0 where m_login='$k'");
            }elseif($do=="audit"){
    $db ->query("update {$cfg['tb_pre']}member set m_flag=1 where m_login='$k'");
    require_once(FR_ROOT.'/inc/mail.inc.php');
    $to=outinfo("{$cfg['tb_pre']}member",'m_login','m_email',''.$k.'','code');
                if($to!='未知'&&$regcArray[5]==1){
                    $from='';
                    $mailtemp=load_mailtemp('person_flag');
                    $subject=replace_cfglabel($mailtemp['tit']);
                    $subject=str_replace('{$FR_会员用户名}',$k,$subject);
                    $body=replace_cfglabel($mailtemp['con']);
                    $body=str_replace('{$FR_会员用户名}',$k,$body);
                    sendmail($to, $from, $subject, $body);
                }
            }elseif($do=="unaudit"){
    $db ->query("update {$cfg['tb_pre']}member set m_flag=0 where m_login='$k'");
            }elseif($do=="comm"){
    $db ->query("update {$cfg['tb_pre']}member set m_comm=1 where m_login='$k'");
            }elseif($do=="uncomm"){
    $db ->query("update {$cfg['tb_pre']}member set m_comm=0 where m_login='$k'");
            }
        }
    showmsg("操作成功!","person_searchlist.php?segment=$segment&keyword=$keyword&operate=$operate&group=$group&page=$page");exit;
    }
    }
    $grouplist='';
    $query=$db->query("select g_id,g_name from {$cfg['tb_pre']}group where g_typeid=1");
    while($row=$db->fetch_array($query)){
    $grouplist.="<a href=\"?operate=$operate&group=$row[g_id]\">$row[g_name]</a> | ";
    }
    $rsdb=array();
    $sqladd='';
    if($keyword!=''){
    switch($segment){
    case "m_name":$sqladd.=" and m_name = '$keyword'";break;
    case "m_login":$sqladd.=" and m_login = '$keyword'";break;
    case "m_email":$sqladd.=" and m_email = '$keyword'";break;
    case "m_tel":$sqladd.=" and m_tel = '$keyword'";break;
    case "m_mob":$sqladd.=" and m_mobile = '$keyword'";break;
    default:$sqladd.=" and m_login = '$keyword'";
    }
    }
    if($operate!=''){
    switch($operate){
    case 0:$sqladd.=" and m_flag=0";break;
    case 1:$sqladd.=" and m_flag=1";break;
    case 2:$sqladd.=" and m_comm=1";break;
    case 3:$sqladd.=" and m_logoflag=0 and m_logo!=''";break;
    case 4:$sqladd.=" and DATEDIFF('".date('Y-m-d')."',m_enddate)>0";break;
    case 5:$sqladd.=" and DATEDIFF(m_enddate,'".date('Y-m-d')."')<=7 and DATEDIFF(m_enddate,'".date('Y-m-d')."')>=0";break;
    case 6:$sqladd.=" and DATEDIFF(m_enddate,'".date('Y-m-d')."')<=30 and DATEDIFF(m_enddate,'".date('Y-m-d')."')>=0";break;
    }
    }
    if($group!=''){
    $sqladd.=" and m_groupid=$group";
    }
    _getcookie('admin_type')=='sitemanage'&&$sqladd.=" and m_site=$admin_site";
    _getcookie('admin_type')=='salemanage'&&$sqladd.=" and m_operator='$operator'";
    $counts = $db->counter("{$cfg['tb_pre']}member","m_typeid=1 $sqladd",'CACHE');
    switch($order){
    case 1:$sqladd.=" order by m_regdate desc";break;
    case 2:$sqladd.=" order by m_logindate desc";break;
    case 3:$sqladd.=" order by m_enddate asc";break;
    default:$sqladd.=" order by m_id desc";
    }
    $sql="select m_id,m_login,m_pwd,m_name,m_logindate,m_flag,m_typeid,m_groupid,
    m_comm,m_regdate,m_logo,m_logostatus,m_logoflag,
    m_tel,m_mobile,DATEDIFF(m_enddate,'".date('Y-m-d')."') as end,
    m_balance,m_loginnum,m_site,
    m_hits,m_startdate,m_enddate from {$cfg['tb_pre']}member where m_typeid=1 $sqladd";
    $page= isset($_GET['page'])?$_GET['page']:1;//默认页码
    $getpageinfo = page($page,$counts,"person_searchlist.php?segment=$segment&operate=$operate&group=$group&order=$order&keyword=$keyword",20,5);
    $sql.=$getpageinfo['sqllimit'];
    $query=$db->query($sql);
    $memberlist='';
    while($row=$db->fetch_array($query)){
    $memberlist.="<tr align=\"center\" onMouseOver=\"this.style.background='#FFFFCC'\" onMouseOut=\"this.style.background='#EEF7FD'\">\r\n";

    $memberlist.="<td height=25>此处就是编号递增填的地方</td>\r\n";  //这里写编号递增代码
    $memberlist.="<td height=25>$row[m_id]</td>\r\n";
    $memberlist.="<td align=\"left\">";
        $memberlist.=aflags($admin_flags,2,1)?"<a href=\"../member/index.php?at=a&login=$row[m_login]&pwd=".md5($row['m_pwd'])."\" title=\"点击进入会员中心!<br>最近访问时间:$row[m_logindate]\" target=\"_blank\">$row[m_login]</a><br>":"<a href=\"#\" title=\"最近访问时间:$row[m_logindate]\">$row[m_login]</a><br>";
    $memberlist.="  <a href=\"#\" title=\"点击查看$row[m_name]基本信息!\" onClick=\"window.open ('user_memberinfo.php?id=$row[m_id]','newwindow','height=500,width=550,top=0,left=0,toolbar=no,menubar=no,scrollbars=yes, resizable=no,location=no, status=no') \">$row[m_name]</a>(";
    $memberlist.=$row['m_flag']?"正常":"<font color='#999999'>待审</font>";
    $memberlist.=")";
    $memberlist.="</td>\r\n";
    $memberlist.="<td align=\"left\">";
    if($row['m_logindate']!=$row['m_regdate']){
    $memberlist.="<font color=\"#ff0000\">$row[m_logindate]</font>";
    }else{
    $memberlist.="<font color='#666666'>尚未再次登录</font>";
    }
    $memberlist.="<br>$row[m_regdate]</td>\r\n";
    $memberlist.="<td align=\"center\">";
    if($row['m_logo']!=''){
            $m_logo=$row['m_logo']=='error.gif'?$cfg['path']."upfiles/person/error.gif":$row['m_logo'];
    $memberlist.="<img src=\"images/haveimg.gif\" id=userphoto{$row[m_id]} alt=\"个人照片:&lt;br&gt;&lt;img src=$m_logo border=1 width=100 height=120&gt;\" width=\"12\" height=\"12\" border=\"0\" onClick=\"show_isven_popup_window('第一步:请选择图片',446,272,'../plus/bitmapcutter/uploadphoto.php?id={$row[m_id]}&u={$row[m_login]}&t=1');\"><br>";
      

  2.   

    您的查询语句不是有 limit 子句吗?
    那么您就该知道 limit 子句的两个参数的含义喽
    limit 开始的记录偏移, 读取的记录数量那这个“开始的记录偏移”不正是你需要的起始编号吗?
      

  3.   

    写个大概的伪代码$sql=select * from table limit $frist,$count;
    $query=$db->query($sql);
    $memberlist='';
    $id= $frist;//赋值初始编号
    while($row=$db->fetch_array($query)){
    echo $id=$id+1;//赋值
    }
      

  4.   


    $page = $_GET['page'];     // 当前页
    $limit = 10;               // 每页显示数量
    $data = $db->select($sql); // 分页查询的数据
    echo '<table>';
    echo '<tr><th>编号</th><th>姓名</th><th>性别</th></tr>';
    $i = 1;
    foreach($data as $row){
        echo '<tr>';
        echo '<td>'.($page-1)*$limit+$i.'</td>';
        echo '<td>'.$row['name'].'</td>';
        echo '<td>'.$row['sex'].'</td>';
        echo '</tr>';
        $i++;
    }
    echo '</table>';
      

  5.   

    翻页不是有个page=2之类的吗?用pagesize*(page-1)+1然后往下就可以了呀