Спасибо за ответ. Сейчас это работа, но у меня есть следующая проблема.
Я переделал метод для отображения записей из базы данных:
public $id, $nazwa, $quantity, $data, $godzina, $sn, $added, $kategoria, $numrows;
public function magazyn() {
$resultmag = $this->magazyn = $this->conn->prepare("SELECT * FROM `products` ORDER BY `id`");
$resultmag = $this->conn->set_charset("utf8");
$resultmag = $this->magazyn->execute();
$resultmag = $this->magazyn->get_result();
if ($isset = $resultmag->num_rows > 0) {
while ($row = $resultmag->fetch_object()) {
$this->id = $row->id;
$this->nazwa = $row->nazwa;
$this->quantity = $row->quantity;
$this->data = $row->data;
$this->godzina = $row->godzina;
$this->sn = $row->sn;
$this->added = $row->added;
$this->kategoria = $row->kategoria;
}
$this->numrows = $resultmag->num_rows;
} else {
echo "No results database";
}
}
function __toString() {
return (string) $this->numrows;
}
//-------------------------------
$mag = new Magazyn();
$mag->magazyn();
?>
<table class="table table-bordered">
<tr><th style='text-align:center'>ID</th><th style='text-align:center'>DODAŁ</th><th style='text-align:center'>NAZWA</th><th style='text-align:center'>KATEGORIA</th><th style='text-align:center'>SERIAL</th><th style='text-align:center'>ILOŚĆ</th><th style='text-align:center'>DATA</th><th style='text-align:center'>GODZINA</th><th style='text-align:center' colspan='2'>AKCJA</th></tr>
<?php
$color = NULL;
$color1 = '#99bbff';
$color2 = '#b3ccff';
$color == $color1 ? $color = $color2 : $color = $color1;
echo "<tr class='active'>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $mag->id . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'><a href='panel.php?page=userpanel&user=" . $mag->added . "'>" . $mag->added . "</a></td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $mag->nazwa . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'><a href='panel.php?page=category&cat=" . $mag->kategoria . "'>" . $mag->kategoria . "</a></td>";
echo "<td align='center' style='background-color:" . $color . ";'><a href='panel.php?page=editserial&sn=" . $mag->sn . "'>" . $mag->sn . "</a></td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $mag->quantity . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $mag->data . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $mag->godzina . "</td>";
echo "<td align='center'><a href='panel.php?page=magazyn&action=edit&sn=" . $mag->sn . "&nazwa=" . $mag->nazwa . "&kategoria=" . $mag->kategoria . "&id=" . $mag->id . "'</a><button class='btn btn-default'>Edytuj</button></td>";
echo "<td align='center'><a href='panel.php?page=magazyn&action=delete&sn=" . $mag->sn . "'</a><button class='btn btn-default'>Usuń</button></td>";
echo "</tr>";
Проблема в том, что он отображает ТОЛЬКО ОДНА ЗАПИСЬ из базы данных.
Когда я добавляю в то время как эхо:
while ($row = $resultmag->fetch_array()) {
echo $this->id = $row['id'];
echo $this->nazwa = $row['nazwa'];
echo $this->quantity = $row['quantity'];
echo $this->data = $row['data'];
echo $this->godzina = $row['godzina'];
echo $this->sn = $row['sn'];
echo $this->added = $row['added'];
echo $this->kategoria = $row['kategoria'];
}
Отображает все записи, но:
$mag->magazyn();
Как сказано выше в комментарии Дагона, добавьте ваши значения в многомерный массив. Вместо
public $id, $nazwa, $quantity, $data, $godzina, $sn, $added, $kategoria, $numrows;
Просто делать
public $records = array();
public $numrows;
Затем вы добавите все записи в этот массив:
public function magazyn() {
$resultmag = $this->magazyn = $this->conn->prepare("SELECT * FROM `products` ORDER BY `id`");
$resultmag = $this->conn->set_charset("utf8");
$resultmag = $this->magazyn->execute();
$resultmag = $this->magazyn->get_result();
if ($isset = $resultmag->num_rows > 0) {
while ($row = $resultmag->fetch_object()) {
$record['id'] = $row->id;
$record['nazwa'] = $row->nazwa;
// etc... Add all like above
$this->records[] = $record;
}
$this->numrows = $resultmag->num_rows;
} else {
echo "No results database";
}
}
Затем в вашем HTML вы перебираете $mag->records
:
<table class="table table-bordered">
<?php foreach ($mag->records as $record) : ?>
<tr><th style='text-align:center'>ID</th><th style='text-align:center'>DODAŁ</th><th style='text-align:center'>NAZWA</th><th style='text-align:center'>KATEGORIA</th><th style='text-align:center'>SERIAL</th><th style='text-align:center'>ILOŚĆ</th><th style='text-align:center'>DATA</th><th style='text-align:center'>GODZINA</th><th style='text-align:center' colspan='2'>AKCJA</th></tr>
<?php
$color = NULL;
$color1 = '#99bbff';
$color2 = '#b3ccff';
$color == $color1 ? $color = $color2 : $color = $color1;
echo "<tr class='active'>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $record['id'] . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'><a href='panel.php?page=userpanel&user=" . $record['added'] . "'>" . $record['added'] . "</a></td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $record['nazwa'] . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'><a href='panel.php?page=category&cat=" . $record['kategoria'] . "'>" . $record['kategoria'] . "</a></td>";
echo "<td align='center' style='background-color:" . $color . ";'><a href='panel.php?page=editserial&sn=" . $record['sn'] . "'>" . $record['sn'] . "</a></td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $record['quantity'] . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $record['data'] . "</td>";
echo "<td align='center' style='background-color:" . $color . ";'>" . $record['godzina'] . "</td>";
echo "<td align='center'><a href='panel.php?page=magazyn&action=edit&sn=" . $record['sn'] . "&nazwa=" . $record['nazwa'] . "&kategoria=" . $record['kategoria'] . "&id=" . $record['id'] . "'</a><button class='btn btn-default'>Edytuj</button></td>";
echo "<td align='center'><a href='panel.php?page=magazyn&action=delete&sn=" . $record['sn'] . "'</a><button class='btn btn-default'>Usuń</button></td>";
echo "</tr>";
endforeach;
?>
</table>
Других решений пока нет …