Sort/Tabellen/QR-Code altmodisch gelöst? Verbesserungsvorschläge?

1 Antwort

Das Sortieren von Listen/Tabellen (nach dem ersten Laden der Seite) würde ich heutzutage eher mittels JavaScript lösen. Es geht so schneller, als jedes Mal die komplette Seite neu anfordern zu müssen.

Eine Beispielimplemenation für so etwas findet man auch leicht: APG: Sortable Table Example.

Dein PHP-Code kann natürlich trotzdem bleiben, um bei expliziten Aufrufen der Seite die Daten vorsortiert zu laden.

Ansonsten gilt bezüglich deines Codes dasselbe, was ich dir in den Punkten 1, 3 und 8 dieses Beitrags schon schrieb.

Was den QR-Code-Generator angeht:

  • Die von dir genutzte Bibliothek kannst du selbst überprüfen.
  • Das type-Attribut auf dem Submit-Button ist redundant.
  • Dem Download-Button hingegen würde ich ein type-Attribut geben, welches ihn als einfachen Klickbutton ausweist (type="button").
  • Es wäre praktisch, die inhaltliche Änderung des QR-Code-Containers entsprechend zu kommunizieren. Zeichne das Element als Live-Region aus:
<div aria-live="polite" id="qrcode"></div>
  • Den Downloadbutton würde ich folglich mit in den Container packen.
  • Um CSS und JavaScript stärker voneinander zu trennen, wäre es schöner, dem Downloadbutton je nach Status nur eine Klasse hinzuzufügen oder zu entziehen. Eine CSS-Regel kann die Sichtbarkeit regeln.

CSS:

.hidden { display: none }

HTML:

<button class="hidden" id="downloadBtn">QR-Code herunterladen</button>

JavaScript:

document.getElementById("qrForm").addEventListener("submit", function(event) {
  /* ... */
  const downloadButton = document.getElementById("downloadBtn");
  downloadButton.classList.remove("hidden");
});