简体   繁体   English

分组(备注)php mysql中的值

[英]Group by ( remarks ) Value in php mysql

Below is products table : 以下是产品表:

id | mid | wgh | remark| remkok | 
1    3     1.5    r3ok      1
2    2     1.5              0 
3    2     0.6    nice      0 
4    1     1.2    okh       0
5    4     1.5    bye       0
6    4     2.4    okby      0
7    3     3.0    oknice    1

I want to display remark below tr of group by mid..like below 我想在group by的tr下面显示备注。

    mid   wgh  
    3     1.5   
          3.0 
  remarks : r3ok, oknice
    4     1.5
          2.4
  remarks : bye, okby
    2     1.5
          0.6
  remarks :  , nice
    1     1.2
  remarks : okh

What I have tried as below : 我尝试了如下:

$pid= null;
while($row = mysql_fetch_array($result))
{

 $rowpkts =  $row['mid'];
 echo "<tr class=\"undercl\">";
   if($rowpkts != $pid){
         echo'<td align="center" valign="top">'.$row["mid"].'</td>';
  }else{
        echo'<td align="center" valign="top"></td>';
   }

   echo'<td align="center" valign="top">'.$row["wgh"].'</td>';

  echo "</tr>";

// what i tried to build for remarks as below

$remsql = "SELECT mid as onu , GROUP_CONCAT(`remark` ORDER BY `id` ASC  SEPARATOR ', ') AS plrmks 
FROM products  WHERE 1=1 GROUP BY `mid`";
$fetchremk = mysql_query($remsql);
$rowresults =  mysql_fetch_array($fetchremk);

 if($rowresults['onu'] == $pid ){   

  echo"<tr style='border-style:underline;'>";
       echo'<td align="center" align="top">'.$rowresults["plrmks"].'</td>';               
           echo"</tr>";
        }
  }
  $pid = $rowpkts;
} 

But remarks is not coming proper below tr ... it means its not display below mid=3 or mid=1. 但是在tr之下的注释不正确。这意味着它不在mid = 3或mid = 1以下显示。

Any other way,that would help me. 任何其他方式,对我有帮助。

Add appropriate colspan as required and do not do center align. 根据需要添加适当的colspan,并且不要居中对齐。

Try below code 试试下面的代码

while($row = mysql_fetch_array($result))
{

    $rowpkts =  $row['mid'];
    echo "<tr class=\"undercl\">";
    if($rowpkts != $pid){
         echo'<td align="center" valign="top">'.$row["mid"].'</td>';
    }else{
        echo'<td align="center" valign="top"></td>';
    }
    echo'<td align="center" valign="top">'.$row["wgh"].'</td>';

    echo '</tr>';
    $remsql = "SELECT mid as onu , GROUP_CONCAT(`remark` ORDER BY `id` ASC  SEPARATOR ', ') AS plrmks 
    FROM products  WHERE `remkok`= 1 GROUP BY  `mid`";
    $fetchremk = mysql_query($remsql);
    $rowresults =  mysql_fetch_array($fetchremk);

    if($rowresults['onu'] ==  $pid ){   

       echo"<tr><td colspan ='?'> Remarks : ";
       echo $rowresults["plrmks"];               
       echo "</td></tr>";
     }
    $pid = $rowpkts;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM