Dateien sortieren, mit link wiedergeben und bei Klick im Zielframe anzeigen
bearbeitet von Gunnar Bittersmann@@Thomas
> [Vertretungspläne](https://www.mfzk-schwerin.de/vertretungsplan/vertretungsplan.php)
Willst du uns noch die Zugangsdaten dafür verraten?
Von deinem Sortierungsproblem abgesehen ist dein HTML nicht in Ordnung. `h1` sollte nur einmal auf einer Webseite vorkommen und den Seitentitel angeben, also nicht in einer Schleife mehrmals generiert werden.
Für die Auf*list*ung der Pläne bietet sich eine Liste an. (Wer hätte das gedacht?) Die Frage nach der Sortierung legt nahe, dass es eine geordnete ist: `ol`.
Markup sollte nicht mit PHP `echo` generiert werden. Nicht HTML in PHP schachteln, sondern PHP in HTML – mit der [alternativen Syntax für Kontrollstrukturen](https://www.php.net/manual/de/control-structures.alternative-syntax.php).
Dein Code sollte so aussehen:
```php
<?php
$verzeichnis = './vertretungsplaene/';
$inhalt = scandir($verzeichnis);
?>
<h1>Vertretungspläne</h1>
<ol>
<?php foreach ($inhalt as $datei): ?>
<?php if($datei != '.' and $datei != '..'): ?>
<li>
<a href="<?= $verzeichnis ?>/<?= $datei ?>" target="vertretungsplaene">
<?= $datei ?>
</a>
</li>
<?php endif; ?>
<?php endforeach; ?>
</ol>
```
`<?=` ist die Kurzform für `<?php echo`, was du natürlich auch schreiben kannst.
😷 LLAP
--
*„Sag mir, wie Du Deine Maske trägst, und ich sage Dir, ob Du ein Idiot bist.“* —@Ann_Waeltin
Dateien sortieren, mit link wiedergeben und bei Klick im Zielframe anzeigen
bearbeitet von Gunnar Bittersmann@@Thomas
> [Vertretungspläne](https://www.mfzk-schwerin.de/vertretungsplan/vertretungsplan.php)
Willst du uns noch die Zugangsdaten dafür verraten?
Von deinem Sortierungsproblem abgesehen ist dein HTML nicht in Ordnung. `h1` sollte nur einmal auf einer Webseite vorkommen und den Seitentitel angeben, also nicht in einer Schleife mehrmals generiert werden.
Für die Auf*list*ung der Pläne bietet sich eine Liste an. (Wer hätte das gedacht?) Die Frage nach der Sortierung legt nahe, dass es eine geordnete ist: `ol`.
Markup sollte nicht mit PHP `echo` generiert werden. Nicht HTML in PHP schachteln, sondern PHP in HTML – mit der [alternativen Syntax für Kontrollstrukturen](https://www.php.net/manual/de/control-structures.alternative-syntax.php).
Dein Code sollte so aussehen:
```php
<?php
$verzeichnis = './vertretungsplaene/';
$inhalt = scandir($verzeichnis);
?>
<h1>Vertretungspläne</h1>
<ol>
<?php foreach ($inhalt as $datei): ?>
<?php if($datei != "." and $datei != ".."): ?>
<li>
<a href="<?= $verzeichnis ?>/<?= $datei ?>" target="vertretungsplaene">
<?= $datei ?>
</a>
</li>
<?php endif; ?>
<?php endforeach; ?>
</ol>
```
`<?=` ist die Kurzform für `<?php echo`, was du natürlich auch schreiben kannst.
😷 LLAP
--
*„Sag mir, wie Du Deine Maske trägst, und ich sage Dir, ob Du ein Idiot bist.“* —@Ann_Waeltin