my循环的PHP循环输出缺少一行

D G*_*D G 0 javascript php mysql database foreach

问题摘要:我有一个带有一些数据的mysql表,我使用一些phpcode将数据显示到一个html页面,在页面加载之前设置JavaScript变量.循环似乎工作正常,有一个例外,表的第一行被删除或没有显示.我无法弄清楚为什么,是否缺少一点点逻辑?

我这里有一个mySQL表:http: //gyazo.com/ac75247b1a3f11f59721f03ff9c80d08

和一些PHP代码在这里显示它:

//...

$sql        = "SELECT * FROM ".TABLE_CALCULATOR." WHERE calculation_status = 'A'";
$result     = mysql_query($sql);
$row        = mysql_fetch_array($result);
$num_rows   = mysql_num_rows($result);

if(count($num_rows) > 0 ){
    while ($row = mysql_fetch_assoc($result)) {
        $calculator_data[] = $row;
    }
}else{
    // Send Notication to admin Calculator not set
}

//...

<?php

if(!empty($calculator_data)){
    foreach($calculator_data as $k => $v ){

        if($v['name_value'] == 'perWinPriceMatrix'){

            $per_win_matrinx = explode(",", $v['calculation_values'] );
            $per_win_matrinx_final = array_chunk($per_win_matrinx, 5, true);

            foreach($per_win_matrinx_final as $key => $values ){
                  $var[$key] =  $key.':['.implode(',',$values).']';

            }
            ?> var <?php echo $v['name_value'] ;?> = <?php echo "{".implode(",", $var)."}";?>;<?php echo "\n";
        }else{
            ?> var <?php echo $v['name_value'] ;?> = [<?php echo $v['calculation_values'] ;?>];<?php echo "\n";
        }
    }
}

?>
Run Code Online (Sandbox Code Playgroud)

这是输出:

 var tax_bronze2 = [30,20,20,5,0];
 var tax_bronze3 = [30,20,20,5,0];
 var tax_bronze4 = [25,20,20,5,0];
 var tax_bronze5 = [25,20,20,5,0];
 var tax_silver1 = [35,30,30,5,0];
 var tax_silver2 = [30,20,20,5,0];
 var tax_silver3 = [30,20,20,5,0];
 var tax_silver4 = [30,20,20,5,0];
 var tax_silver5 = [30,20,20,5,0];
 var tax_gold1 = [70,50,30,10,0];
 var tax_gold2 = [60,40,20,8,0];
 var tax_gold3 = [60,40,20,8,0];
 var tax_gold4 = [60,40,20,8,0];
 var tax_gold5 = [60,40,20,8,0];
 var tax_platinum1 = [100,75,40,10,0];
 var tax_platinum2 = [80,65,40,10,0];
 var tax_platinum3 = [80,65,40,10,0];
 var tax_platinum4 = [80,65,40,10,0];
 var tax_platinum5 = [80,65,40,10,0];
 var tax_diamond1 = [0,0,0,0,0];
 var tax_diamond2 = [120,85,50,20,0];
 var tax_diamond3 = [120,85,50,20,0];
 var tax_diamond4 = [120,85,50,20,0];
 var tax_diamond5 = [120,85,50,20,0];
 var perWinPriceMatrix = {0:[4,4,4,4.5,4.75],1:[5,5.3,5.7,6.2,6.2],2:[7.8,8.6,9.7,10.8,11.8],3:[13,15,17,18,18],4:[19,21,25,30,40]};
 var price_matrix = [19,20,20,20,32,24,24,24,24,42,46,51,53,56,60,60,65,74,79,140,186,214,242,298];
 var provisionalPrice = [60,80,9.25,13,1.3,0.75];
Run Code Online (Sandbox Code Playgroud)

问题:为什么输出缺少一行?

sam*_*emi 5

删除$row = mysql_fetch_array($result);此行获取行#1