【发布时间】:2017-10-09 16:40:24
【问题描述】:
我尝试获取一行代表名称作为列标题,然后在该标题下每个代表的前十个销售项目
我试图让数据像这样输出:
代表姓名1 代表姓名2 代表姓名3 代表姓名4
(代表名称来自数据库,永远不会是固定数字)
在列中每个销售代表姓名的下方,按降序排列他们最畅销的十件商品
像这样:
RepName1
(将从数据库中提取最畅销的信息)
第一个销售项目
第二个卖点
第三个卖点
第四个卖点
第 5 个卖点
第 6 个卖点
第 7 个卖点
第 8 个卖点
第 9 件商品
第 10 件商品
然后开始一个新的专栏,其中包含下一位代表和他或她的前十名卖家。
$qry = "SELECT sales_rep_login FROM sales_reps WHERE status = 'A'";
$return_reps = mysql_query($qry);
$reps = array();
while($repX = mysql_fetch_assoc($return_reps)) {
$reps[] = $repX['sales_rep_login'];
}
foreach ($reps as $rep){
$q="SELECT sales_quantity.style_num, sales_quantity.number_sold, sales_reps.fname, sales_reps.lname FROM catalog JOIN sales_quantity ON catalog.style_num = sales_quantity.style_num
JOIN sales_reps ON sales_quantity.sales_rep_login = sales_reps.sales_rep_login
WHERE catalog.status = 'A'
AND catalog.season_id = '" . $_POST['season'] . "'
AND sales_quantity.sales_rep_login = '" .$rep. "'
AND sales_reps.status = 'A'
ORDER BY sales_quantity.number_sold DESC LIMIT 10";
$return_sales = mysql_query($q);
$Total_Sales = array();
while($Sales=mysql_fetch_assoc($return_sales))
$Total_Sales[] = $Sales;
} // end foreach
出于某种原因,我只获得了最后一次代表的信息。
提前致谢
【问题讨论】:
-
只是一个建议:我的项目很容易维护,你真的应该迁移到 PDO 模块,因为 mysql_* 函数从 php5.5 开始被弃用并从 php7.0 中删除。
-
第 1 步是停止使用已弃用的 API。第 2 步是将这两个查询减少到只有 1 个。然后我们可以讨论显示。第 2 步,请参阅meta.stackoverflow.com/questions/333952/…
-
哦,在处理第 2 步时假装它是
LIMIT 3。
标签: php mysql arrays multidimensional-array