-2

このフォーム (form.php) から取得するデータの配列があります。

<?
   include"connect.php";
   $sql = "select * from tbsatpor ";
   $qry = mysql_query($sql);
   echo"<form name='submit' method='POST' action='proses.php'>";
   $no  = 1;
   while ($data = mysql_fetch_array($qry)){
      $nomor  = $no++;
      echo "<input type='text' name='kd_satpor[]' value='$data[kd_satpor]' > 
            <input type='text' name='kd_unor[]' value='$data[kd_unor]' >
            <input type='text' name='buy[]' value=''><br>";
   }
   echo"<input type='submit' name='submit' value='submit'></form>";
?>

ここにresultpage.phpがあります:

<?
  echo "<table border='0' size=100%>
         <tr><td>CODE</td><td>BUY</td><td>UNOR</td><td>TOTAL SUM</td></tr>";
  for ($i=0; $i<count($_POST['buy']);$i++){
     $_session[$i] =  $_POST['kd_satpor'][$i];
     $_session[$_POST['buy'][$i]] =  $_POST['buy'][$i];
     $_session[$_POST['kd_unor'][$i]] =  $_POST['kd_unor'][$i];
     $total[i]  =  $_session[$_POST['kd_unor'][$i]] * $_session[$_POST['buy'][$i]];

     if($total[i]!=0){ 
        echo "<tr><td>".$_session[$i]."</td><td>" .$_session[$_POST['buy'][$i]]." X                
              </td><td>".$_session[$_POST['kd_unor'][$i]]."=</td><td>".$total[i]."</td>
              <td></tr>";
     }
  } 
  echo"</table>";
?>

データ配列は次のようになります (resultpage.php の出力):

CODE   | BUY   | UNOR | SUM
+++++++++++++++++++++++++++++++
024K30 | 10000 | 2    | 20000 | => 10000 x 2 = 20000
024K31 | 2000  | 3    | 6000  | =>  2000 x 3 = 6000
024K32 | 5000  | 3    | 15000 | =>  5000 x 3 = 15000
                        TOTAL?

配列から TOTAL SUM を作成し、そのコードの結果を表示したいと考えています。どうやってやるの?

4

3 に答える 3

1
$finalTotal = 0;

for ($i=0; $i<count($_POST['buy']);$i++)
{
    ...


    $finalTotal += $total[i];
}

echo 'Final Total: ' . $finalTotal;

また、 PHP セッションを使用する場合は$_SESSIONnotを使用し、ページにエコーアウトする前に$_sessionPOST データを実行することを忘れないでください。htmlentities()

于 2012-05-14T12:00:36.240 に答える
0

あなたが望むものについての推測で:

<? 
$OverallTotal=0;
echo"<table border='0' size=100%> 
<tr><td>CODE</td><td>BUY</td><td>UNOR</td><td>TOTAL SUM</td></tr>"; 
for ($i=0; $i<count($_POST['buy']);$i++) 
 { 
 $_session[$i]=$_POST['kd_satpor'][$i]; 
  $_session[$_POST['buy'][$i]]=$_POST['buy'][$i]; 
   $_session[$_POST['kd_unor'][$i]]=$_POST['kd_unor'][$i]; 
   $total[i]=$_session[$_POST['kd_unor'][$i]]*$_session[$_POST['buy'][$i]]; 
   $OverallTotal+=$total[i];

   if($total[i]!=0) 
   {  

echo "<tr><td>".$_session[$i]."</td><td>" .$_session[$_POST['buy'][$i]]." X </td><td>".$_session[$_POST['kd_unor'][$i]]."=</td><td>".$total[i]."</td><td></tr>"; 

} 
}  
echo"</table>"; 

echo $OverallTotal;
?> 
于 2012-05-14T12:01:57.787 に答える
0

以下のようにインクリメント演算子を使用してみてください。

<?php
$totalSum = 0;
echo"<table border='0' size=100%>
<tr><td>CODE</td><td>BUY</td><td>UNOR</td><td>TOTAL SUM</td></tr>";
for ($i=0; $i<count($_POST['buy']);$i++)  {
    $_session[$i]=$_POST['kd_satpor'][$i];
    $_session[$_POST['buy'][$i]]=$_POST['buy'][$i];
    $_session[$_POST['kd_unor'][$i]]=$_POST['kd_unor'][$i];
    $total[i]=$_session[$_POST['kd_unor'][$i]]*$_session[$_POST['buy'][$i]];    
    if($total[i]!==0) { 
        $totalSum +=$total[i];
        echo "<tr><td>".$_session[$i]."</td><td>" .$_session[$_POST['buy'][$i]]." X </td><td>".$_session[$_POST['kd_unor'][$i]]."=</td><td>".$total[i]."</td><td></tr>";
    }
}
echo "<tr><td colspan='3' align='right'><b>TOTAL</b></td><td>".$totalSum."</td><td></tr>";
echo"</table>";
?> 
于 2012-05-14T12:07:35.800 に答える