首页 > 解决方案 > 将 id 传递给 url 上显示在表中的计数

问题描述

我有一个函数,我在其中返回一个显示时可点击的计数。单击此计数时,页面将重定向到用户列表及其详细信息。显示的计数具有指向信息页面的链接,其中包含id传入 URL 的用户。我没有得到结果,因为链接只显示一个用户 ID 而不是两个(根据数据库)或一些不相关id的。如果我错过了这件事,任何帮助将不胜感激。

显示计数的功能,

  function clearedmodule()
  {
   $id= '';
   $res =   mysql_query("SELECT id from tbl_users WHERE status= 1 AND type = 3 ");

        while($row  =   mysql_fetch_array($res))

        {
        $query =  mysql_query("SELECT DISTINCT user_id FROM tbl_user_quiz  GROUP BY user_id HAVING COUNT(DISTINCT module_id) = '".$this->userQuestionModules()."'  AND SUM(cleared) = 0 ");
       while($row1 = mysql_fetch_assoc($query))
       {
           foreach($row1 as $cname => $id)
           {
            $id     .=  $row['id'].',';
           }

       }

    }
        return substr($id, 0, -1);

  }

现在<td>显示计数的位置,

     <td>Not Cleared</td>

     <td>
      <?php 

        $ids = $rep->clearedmodule();

        $ids    =   explode(",",$ids) ;

      $linkId = $rep->clearedmodule();

            if($linkId)

      {   ?>
       <a href="reportNotCleared.php?Userid=<?php echo $linkId ; ?>"><?php echo count($ids); ?></a>

    <?php 

     } 
     else{
    echo "0";
 }
?> </a></td>

使用上面,我得到的 URL 是

reportNotCleared.php?Userid=101311831013正确的 id在哪里,1183根本不正确,我希望它们用逗号分隔。

标签: phpmysqlurl-redirection

解决方案


您的第二个查询是您需要的唯一查询。只需删除除中间一个之外的所有循环,您就可以开始了!

function clearedmodule() {

$query = mysql_query("SELECT DISTINCT user_id FROM tbl_user_quiz GROUP BY user_id HAVING COUNT(DISTINCT module_id) = '".$this->userQuestionModules()."' AND SUM(cleared) = 0 ");

while($row1 = mysql_fetch_assoc($query)){

$id .= $row1['user_id'] . ',';

}

return substr($id, 0, -1);

}

推荐阅读