Heim > Backend-Entwicklung > PHP-Tutorial > 这段循环要怎么纠正?

这段循环要怎么纠正?

WBOY
Freigeben: 2016-06-20 12:47:05
Original
808 Leute haben es durchsucht

$sa='select * from pql_spices_class order by id asc';      $ra=mysql_query($sa);	  $i=1;	  while($rsa=mysql_fetch_array($ra,MYSQL_ASSOC))      {		  //echo $rsa['classname'].",".$rsa['id']."<br />";		  $cid = $rsa['id'];		  $resf=mysql_query('SELECT * FROM `pql_spices` where classid='.$cid.' ORDER BY id DESC');          while($rsf=mysql_fetch_array($resf))           {             $Prices+=$rsf['Price'];          }		  echo $i."、".$rsa['classname'].":".$Prices."元,";		  $i++;	  }
Nach dem Login kopieren


一个分类数据表pql_spices_class:有 分类一、分类二、分类三、……每个分类有对应的ID
一个列表数据表pql_spices:有商品名称、价格、分类ID、分类名称

要把pql_spices表里的价格按分类分别统计价格总价,但我这段代码的结果是:分类一统计对了,到了分类二确是分类一的总和加上分类二的总和,到了分类三确是分类二+加上分类三的总和,以此类推,每一次新分类的统计都会自动加上 上一次分类的统计总和,这就不对了。

请问代码要怎么写,才能准确得到各自分类的统计。不知道这样提问大家能不能明白我要问的意思。


回复讨论(解决方案)

你的 $Prices 总是累加没有清0,自然就是现在的结果

再说一个分组求和的查询指令就可完成的事情,为何要用循环累加完成?

请问要怎么清零呢?

题外话:为什么论坛回复点引用没有反应?

$sa='select * from pql_spices_class order by id asc';

      $ra=mysql_query($sa);

  $i=1;

  while($rsa=mysql_fetch_array($ra,MYSQL_ASSOC))

      {
[color="red"]$Prices=0;//这里清零[/color]
  //echo $rsa['classname'].",".$rsa['id']."
";

  $cid = $rsa['id'];

  $resf=mysql_query('SELECT * FROM `pql_spices` where classid='.$cid.' ORDER BY id DESC');

          while($rsf=mysql_fetch_array($resf)) 

          {

             $Prices+=$rsf['Price'];

          }

  echo $i."、".$rsa['classname'].":".$Prices."元,";

  $i++;

  }

哦哦,今天又犯傻了。谢谢了,两位。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage