/ / Eckige Klammern in POST-Anfrage - PHP, Formulare

Eckige Klammern in POST-Anfrage - PHP, Formulare

Sagen wir, ich habe eine form.html Das sieht so aus:

<form action="welcome.php" method="post">
Name: <input type="text" name="submitted[name]">
Age: <input type="text" name="age">
<input type="submit">
</form>

Und ein welcome.php Das sieht so aus:

Welcome <?php echo $_POST["submitted[name]"]; ?>!<br>
You are <?php echo $_POST["age"]; ?> years old.

Warum wird das Alter angezeigt, aber nicht der Name? Ich bin sicher, es sind die eckigen Klammern. ich kippen Ändern Sie den Namen der Variablen submitted[name]

Ich habe versucht zu setzen , " aber hat nicht funktioniert. Was ist der Trick?

Antworten:

7 für die Antwort № 1

Die eckigen Klammern am Attribut name geben ein Array an, mit dem PHP versucht, darauf zuzugreifen $_POST["submited"]["name"]


2 für die Antwort № 2

Die eckigen Klammern in Ihrem HTML-Formular verwandeln es in ein Array. $_POST["submitted"] ist ein Array.

Sie möchten lesen:

$_POST["submitted"]["name"];

0 für die Antwort № 3
Name: <input type="text" name="<?php echo $_POST["submitted"]["name"]; ?>">

Ihre Datei muss die Erweiterung .php haben. (form.php)