Files
2026-08-22 15:15:55 +02:00

86 lines
2.3 KiB
PHP
Executable File

<?php
require_once __DIR__ . "/../includes/auth.php";
requireRole("cliente");
require_once __DIR__ . "/../config/database.php";
$idCliente = (int) $_SESSION["idUtente"];
$ordini = [];
$stmt = $pdo->prepare("
SELECT
o1.idOrdine,
o1.dataOraCreazione,
o1.statoConferma,
o1.orarioConsegna,
o1.totale,
o1.tempoStimatoConsegna,
so1.nomeStato
FROM
ordine AS o1
JOIN storicoStato AS ss1
ON o1.idOrdine = ss1.idOrdine
JOIN statoOrdine AS so1
ON ss1.idStatoOrdine = so1.idStatoOrdine
WHERE
o1.idCliente = :idCliente
AND so1.posizione = (
SELECT
MAX(so2.posizione)
FROM
storicoStato AS ss2
JOIN statoOrdine AS so2
ON ss2.idStatoOrdine = so2.idStatoOrdine
WHERE
ss2.idOrdine = o1.idOrdine
)
");
$stmt->execute([
"idCliente" => $idCliente
]);
$ordini = $stmt->fetchAll(PDO::FETCH_ASSOC);
$pageTitle = "I miei ordini"; $basePath = "..";
require __DIR__ . "/../includes/header.php";
?>
<h1 class="h3">I miei ordini</h1>
<?php if (!$ordini): ?>
<div class="alert alert-info">Nessun ordine da mostrare.</div>
<?php endif; ?>
<div class="table-responsive">
<table class="table table-striped align-middle">
<thead>
<tr>
<th>ID</th>
<th>Creato</th>
<th>Conferma</th>
<th>Avanzamento</th>
<th>Consegna</th>
<th>Totale</th>
</tr>
</thead>
<tbody>
<?php foreach ($ordini as $o): ?>
<tr>
<td><?= e($o["idOrdine"]) ?>
</td><td><?= e($o["dataOraCreazione"]) ?>
</td><td>
<span class="badge bg-secondary"><?= e($o["statoConferma"]) ?>
</span>
</td><td><?= e($o["nomeStato"] ?? "—") ?>
</td><td><?= e($o["orarioConsegna"]) ?>
</td><td>€ <?= e($o["totale"]) ?>
</td></tr><?php endforeach; ?>
</tbody></table></div>
<?php require __DIR__ . "/../includes/footer.php"; ?>