前几天我问了这个问题,但我删除了它,因为我太模糊了,所以这里有更详细的信息,希望有人能提供帮助。对不起,如果解释很长,但我想确保这次有意义。
我有一个健身网站,显示人们在 drupal 上运行的健身测试的分数,所以我使用的是 mysql 和 php。
该网站还有一个名为Trianables
. 可训练是您可以锻炼的东西,例如速度和力量,它们将帮助您在运动中变得更好。共有12个可训练对象。
您对每个可训练项都有一个分数,该分数由 php 代码计算,该代码从数据库中选择 1 个或多个体能测试结果(取决于可训练项),计算您与数据库中其他运动员相比的排名,将该计算放入一个数字中1-5,其中 1 是最低 20% 的运动员,5 是前 20% 的运动员,然后将此数字存储在 php 变量中,以便我可以将其放置在页面的不同区域。我通常使用这样的代码对图像执行此操作
echo "<img src='http://example.com/images/score$Balance.png'>";
这个例子会给我一个名为 score4.png 的图像。我有 score1.png-score5.png
我在页面内的不同选项卡上显示可训练分数,但我想做的是在第一个选项卡上显示他们得分最低的 5 个可训练项(如 1 和 2),并为每个选项显示一个练习,以便他们可以看到5个最重要的练习来改进。
这将需要一个脚本,该脚本包含所有 12 个变量(每个可训练变量 1 个),将它们从最低数字排列到最高数字,然后仅输出最低的 5 个变量。
使用数组执行此操作的最佳方法是什么?我已经想出如何使用数组来按顺序使用此代码吐出最低的 5 个数字
<?php
$worsttrains=array($trainable1, $trainable2, $trainable3, $trainable4, $trainable5, $trainable6, $trainable7, $trainable8, $trainable9, $trainable10, $trainable11, $trainable12);
asort($worsttrains, SORT_NUMERIC);
$worst5trains=array_slice($worsttrains, 0, 5, true);
foreach ($worst5trains as $a)
echo " ".$a ;
echo "<br>";
?>
最后,我想我希望数据以表格格式显示,如下面的代码,但我需要一个代码,它按分数列中的变量排序,它需要在其行中携带其他信息(可训练和练习),只能显示变量最低的 5 行。这可以通过数组实现还是我需要查看 jquery 之类的东西?
<table>
<tr>
<th>Trainable</th>
<th>Score</th>
<th>Exercise</th>
</tr>
<tr>
<td>Balance</td>
<td>$balance</td>
<td>Balance Board Squat</td>
</tr>
<tr>
<td>Lower Strength</td>
<td>$lowerstrength</td>
<td>Squats</td>
</tr>
<tr>
<td>Lower Power</td>
<td>$lowerpower</td>
<td>Forward Jump Squats</td>
</tr>
<tr>
<td>Lower Quickness</td>
<td>$lowerquickness</td>
<td>Skater Hop</td>
</tr>
<tr>
<td>Reaction Time</td>
<td>$reactiontime</td>
<td>4 Corner Listen</td>
</tr>
<tr>
<td>Brakes</td>
<td>$brakes</td>
<td>Monger Hop</td>
</tr>
<tr>
<td>Upper Quickness</td>
<td>$upperquickness</td>
<td>Light Ball Toss</td>
</tr>
</table>
如果这比在表格中更容易,我也可以使用 div。
如果您需要澄清,我希望这是有道理的。