我正在尝试从数据库中的列表中填充锻炼。
例如,二头肌弯举机有以下组数和次数:
bicep curl machine sets 1 reps 50
bicep curl machine sets 2 reps 25
bicep curl machine sets 3 reps 15
bicep curl machine sets 4 reps 10
bicep curl machine sets 1 reps 100
但也有不同的锻炼计划。例如体重减轻或肌肉增加。这些计划由计划 ID 确定。因此,二头肌弯举机可能有不同的组数或次数,具体取决于所选的计划。
计划 2
bicep curl machine sets 1 reps 20
bicep curl machine sets 2 reps 15
bicep curl machine sets 3 reps 10
bicep curl machine sets 4 reps 5
bicep curl machine sets 1 reps 30
我想随机选择这些行之一并将其推送到我的站点。现在有一个 SetsRepsWeight 表,其中包含 set_id、sets、reps 和 weight
然后是一个包含 machine_id 和 set_id 的 setMaster 表,其中 machine_id 来自一个包含所有可用机器的表。
因此,如果我的 SetsRepsWeight 表如下所示:
setMaster 包含:
所以二头肌卷曲可以是 set_id 的 1-5 中的任何一个。我想随机选择该行并将其填充到数据库中,但我需要有关设置的建议。现在,组数、次数和重量都在一个数组中。我怎样才能实现我的目标?
这是我现在的代码:
$machine_atts = array(
'bicep curl' => array( 'sets' => 1, 'reps' => 50, 'weight' => 25 ),
'cable chest press' => array( 'sets' => 1, 'reps' => 100, 'weight' => 40 ),
'lat pulldown' => array( 'sets' => 2, 'reps' => 25, 'weight' => 20 ),
'tricep extension' => array( 'sets' => 3, 'reps' => 25, 'weight' => 30 ),
);
$sql1 = "SELECT m1.machine_id, m2.* FROM userPlanDetail AS m1 LEFT JOIN machines AS m2 ON m1.machine_id = m2.machine_id WHERE `user_id` = '$user_id1' AND `cardio` = 0";
$retval1 = mysql_query( $sql1, $conn );
$array = array();
$i=0;
while ($row = mysql_fetch_array($retval1, MYSQL_ASSOC)) {
$i++;
$sets = $machine_atts[$row['machine_name']]['sets'];
$reps = $machine_atts[$row['machine_name']]['reps'];
$weight = $machine_atts[$row['machine_name']]['weight'];
$array[] = '<tr><td width="50"><img src="client workout page/round_'.$i.'.jpg"></td><td><img src="'.$row["picture"].'" style="width:200px;height:200px;display:block;margin:20px auto;"/></td><td>'.$row['machine_name'].' <span class="blue">#'.$i.'</span><br>sets <span class="blue">'.$sets.'</span> reps <span class="blue">'.$reps.'</span><br>weight <span class="blue">'.$weight.'</span></td></tr><tr><td></td><td><a class="demo" href="'.$row["link"].'" rel="group1"><img src="client workout page/click to play video.jpg" style="width:186px;height:14px;margin:0 auto;"></a></td></tr>';
}
我需要以某种方式更改此代码以为每个 machine_id 选择一个随机行并输出集合和代表。