PHP表中的html表行或数据库本身

时间:2017-05-08 19:43:11

标签: php mysql csv

我有一个带有CSV上传的网站,它会将CSV中的所有内容推送到临时表,然后拆分成更小的表格。

目前,我有一个显示页面,显示HTML表格中的所有信息。但是,有些部分需要具有公式表示。换句话说,如下面的屏幕截图所示,仪表体积除以测试仪体积,其总和乘以测试仪精度。该数字除以100以得出校正的准确度。

Screenshot

这是我的代码,但它没有加载我的网页,我认为PHP可能在建立变量时出错:

<table style="width:100%; border:none;
border-collapse:collapse;">
<? php

$test1FormA = $row['test1MeterVol'] / $row['test1TesterVol'];
$test1FormB = $test1FormA * $row['test1Accuracy'];
$test1FinalForm = $test1FormB / 100;

?>

    <tr>
        <td style="border:none; text-align: left;">Meter Volume: </td>
        <td><? echo $row['test1MeterVol'];?>&nbsp;</td>
    </tr>
    <tr>
        <td style="border:none; text-align: left;">Tester Volume: </td>
        <td><? echo $row['test1TesterVol'];?>&nbsp;</td>
    </tr>
    <tr>
        <td style="border:none; text-align: left;">Tester Accuracy: </td>
        <td><? echo $row['test1Accuracy'];?>&nbsp;</td>
    </tr>
    <tr>
        <td style="border:none; text-align: left;">Corrected Accuracy: </td>
        <td><? echo $test1FinalForm;?>&nbsp;</td>
    </tr>
</table>

目前数据库中没有更正的准确度,所以我想找到一种方法,每行都可以这样做,如上所述,或者在每次上传CSV时都可以这样做。有8个测试,因此在上传时,必须为CSV中的每5个记录中的8个不同字段执行该公式。我目前使用大型插入语句将CSV上传到临时表中。

有没有办法在PHP表格行中执行此操作?

更新:新结果的屏幕截图

enter image description here

更新:平均问题的代码

<?php 
        $sum=0;
        for($i=1; $i<=8; $i++){ 
            $testFormA = $row["test".$i."MeterVol"] / $row["test".$i."TesterVol"]; 
                $testFormB = $testFormA * $row["test".$i."Accuracy"]; 
                $testFinalForm = $testFormB / 100;
                $sum += $testFinalForm; 
                echo"$sum";                                     
        ?>
        <td><?php echo round($testFinalForm,3) ?>%</td>


        <?php }
        $average = $sum / 8;
        echo"$average";
        ?>

        <td><?php echo round($average,3)?>&nbsp;</td>

1 个答案:

答案 0 :(得分:1)

有很多方法可以满足您的需求。但最重要的是你需要一个循环结构来构建一个漂亮代码的表,而不是一遍又一遍地重复所有内容。

在您的情况下,您可以使用以下代码构建所有8个测试的整个最后一行:

viewDidLoad

而不是像&#34; test4MeterVol&#34;您使用$ i构建索引字符串以在每次循环迭代中访问正确的值。

在循环内执行方程将根据每个测试给出不同的值。

基于此代码以及构建索引来访问数据的方法,您应该能够构建其他行,这些行更简单。