Hallo php-mitglieder
ich bin gerade dabei PHP zu lernen und bin jetzt dort angekommen, wo man Formulardaten ausgibt.
Der folgende Code sieht so aus:
was ich jetzt nicht verstehe ist das:
es soll verhindern dass ein Angreifer PHP durcheinander bringt oder so. Aber ich versteh das nicht so richtig. Kann mir einer genauer erklären inwiefern die Bedingung vor einen möglichen Angriff schütz?
anzahl ist im übrigen type="text"
So etwa hat der das erklärt:
ich bin gerade dabei PHP zu lernen und bin jetzt dort angekommen, wo man Formulardaten ausgibt.
Der folgende Code sieht so aus:
Code:
if (isset($_POST['submit'])) { if (isset($_POST['anzahl'])) && !is_array($_POST['anzahl']) && $_POST['anzahl'] != '') { echo 'Anzahl Karten: ' . htmlspecialchars($_POST['anzahl']) . '<br />'; } else { echo 'keine Karten anzahl ausgewählt.'; } }
Code:
!is_array($_POST['anzahl'])
anzahl ist im übrigen type="text"
So etwa hat der das erklärt:
wäre es für einen angriefer möglicherweise machbar dass $_POST['anzahl'] ein Array ist. Bei Mehrfachauswahlliste, mit den eckigen Klammern, damit gaukelt man PHP vor dass ein Array kommt. Aber bei der Mehrfachauswahlliste ist es kein gaukeln. es kommen wirklich mehrere Werte. Aber sonst kann man eben so PHP aus dem Tripp bringen.
=> es darf kein Array sein.
=> es darf kein Array sein.
Kommentar