1

私は MAMP (ローカルでホストされた SQL、WEB などのサーバー) を持っています。データベース名は :NKTDEBITS、テーブル名は :Insurance で、テーブルの列は STATECOV です。私はこれに近づいていることを知っていますが、それでも合計を生成する必要があるフィールドに黒が表示されます。誰かアイデアがありましたか?

<?php
    $con=mysqli_connect("localhost","root","root","KNTDebits");
    // Check connection
    if (mysqli_connect_errno())
      {
      echo "Failed to connect to MySQL: " . mysqli_connect_error();
      }

    $result = mysqli_query($con,"SELECT * FROM Insurance");
    $result2 = mysqli_query($con,"SELECT * FROM Office");
    $result3 = mysqli_query($con,"SELECT * FROM RichmondLocation");
    $result4 = mysqli_query($con,"SELECT * FROM DanvilleLocation");
    $result5 = mysql_query('SELECT SUM(STATECOV) AS STATECOV_sum FROM Insurance'); 


    echo "<table border='1'>
    <tr>
    <th>Truck Number</th>
    <th>VIN</th>
    <th>Make</th>
    <th>Model</th>
    <th>State Coverage</th>
    <th>Comprehinsive Coverage</th>
    <th>Property Damage/th>
    <th>Personal Injury</th>
    </tr>";

    while($row = mysqli_fetch_array($result))
      {
      echo "<tr>";
      echo "<td>" . $row['TNUM'] . "</td>";
      echo "<td>" . $row['VIN'] . "</td>";
      echo "<td>" . $row['MAKE'] . "</td>";
      echo "<td>" . $row['MODEL'] . "</td>";
      echo "<td>" . $row['STATECOV'] . "</td>";
      echo "<td>" . $row['COMPRE'] . "</td>";
      echo "<td>" . $row['PROPDMG'] . "</td>";
      echo "<td>" . $row['PRSINJ'] . "</td>";
      echo "</tr>";
      }
    echo "</table>";


    //Table 2 Start
    str_repeat('&nbsp;', 5); // adds 5 spaces
    echo "<table border='5'>

    <tr>
    <th>Richmond</th>
    <th>Date</th>
    <th>Payment</th>
    <th>Payer</th>
    </tr>";

    while($row3 = mysqli_fetch_array($result3))
     {
      echo "<tr>";
      echo "<td>" . $row3[''] . "</td>";
      echo "<td>" . $row3['DATE'] . "</td>";
      echo "<td>" . $row3['PAYMENT'] . "</td>";
      echo "<td>" . $row3['PAYER'] . "</td>";
      echo "</tr>";
      }
    echo "</table>";

    //Table 4 Start
    str_repeat('&nbsp;', 5); // adds 5 spaces
    echo "<table border='5'>

    <tr>
    <th>Danville</th>
    <th>Date</th>
    <th>Payment</th>
    <th>Payer</th>
    </tr>";

    while($row4 = mysqli_fetch_array($result4))
      {
      echo "<tr>";
      echo "<td>" . $row4[''] . "</td>";
      echo "<td>" . $row4['DATE'] . "</td>";
      echo "<td>" . $row4['PAYMENT'] . "</td>";
      echo "<td>" . $sum . "</td>";
      echo "</tr>";
      }
    echo "</table>";

    //Table 5 Start

    echo "<table border='5'>

    <tr>
    <th>Total</th>
    </tr>";

    $result = mysql_query('SELECT SUM(STATECOV) AS value_sum FROM Insurance'); 
    $row = mysql_fetch_assoc($result); 
    $sum = $row['value_sum'];

    while($row = mysql_fetch_assoc($result));

      {
      echo "<tr>";
      echo "<td>" . $sum . "</td>";
      echo "</tr>";
      }
    echo "</table>";


    mysqli_close($con);
?> 
4

1 に答える 1

0

SUM と一緒に使用するには GROUP BY が必要です。このためにどの列を使用する必要があるかを知るには、テーブルについて十分に知りません。

データベース/クエリエラーが発生したときにすぐにわかるように、データベースをクエリするときに潜在的なエラーケースを処理する必要があります。

非推奨の関数の代わりにmysqliorを使用することも検討する必要があります。PDOmysql_*

于 2013-05-13T23:22:13.750 に答える