Php de Mysql den gelen bilgiyi fetch_array ile süzdügümde 2. kez fetch_array yapamıyorum.
$harcamalar = $db->query("SELECT * FROM test WHERE company='$company' AND date='$date' order by ID asc");
if ($db->errno > 0) { die("<b>Sorgu Hatası:</b> " . $db->error); }
function harcamalar($n) {
global $harcamalar;
if ($n == "list") {
echo '<table class="table">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Ürün</th>
<th scope="col">Adet</th>
<th scope="col">Fiyat</th>
<th scope="col">TOPLAM</th>
</tr>
</thead>
<tbody>';
$i = 1;
while ($a = $harcamalar->fetch_array()) {
echo'<tr>
<th scope="row">'.$i.'</th>
<td>'.$a["name"].'</td>
<td>'.$a["quan"].'</td>
<td>'.$a["price"].'</td>
<td>'.$a["quan"]*$a["price"].'</td>
</tr>';
$i++;
}
echo '</tbody>
</table>';
} else {
$total = 0;
while ($a = $harcamalar->fetch_array()) { $total = $total + ( $a["quan"] * $a["price"] ); }
echo $total;
}
}
harcamalar("list");
harcamalar("none");
harcamalar("list");
harcamalar("none");
ilk hangi function çalışırsa o dönüyor. ikisi aynı anda dönmüyor
$table = [];
$bakiye = 0;
$id = 0;
while ($a = $harcamalar->fetch_array()) {
$id += 1;
$a["ID"] += $id;
$a["total"] = $a["quan"] * $a["price"];
$bakiye += $["total"];
$["bakiye"] = $bakiye; // ile
$table[] = $a;
}
function harcamalar($table, $n) {
if($n == "list") {
foreach ($table as $val) {
echo '<tr>
<th scope="row">'.$val["ID"].'</th>
<td>'.$val["name"].'</td>
<td>'.$val["quan"].'</td>
<td>'.$val["price"].'</td>
<td>'.$val["total"].'</td>
<td>'.$val["bakiye"].'</td> // Ben şimdilik buraya ekledim değerlendirmene göre tekrar düzenlerim.
</tr>';
}
} else {
// burasını tam anlayamadım bakiye bilgisini almaya çalışıyorsun sanki ama neden tablonun dışında?
}
}
harcamalar($table, "list")