J'ai plusieurs entrées dans un fichier comme celui-ci:

<form action="card_generate.php">
<input type="text" name="tZero">
        <input type="text" name="tOne">
        <input type="text" name="tTwo">
        <input type="text" name="tThree">
</form>
$tabs = array($_POST["tZero"], $_POST["tOne"], $_POST["tTwo"], $_POST["tThree"]);

Existe-t-il un moyen de mettre ces valeurs dans un tableau via une boucle ou quelque chose au lieu de mettre chaque valeur dans un tableau une par une, il peut y avoir plus de valeurs que quatre valeurs.

0
Siyad Nijah 16 nov. 2017 à 05:32

4 réponses

Meilleure réponse

Vous pouvez, en utilisant array_push: http://php.net/manual/de/ function.array-push.php

Vous pouvez simplement faire une boucle comme ceci:

for($i = 0; $i < 10; $i++) {
    if(isset($_POST["t" . $i])) {
        array_push($array, $_POST["t" . $i]);
    }
}
-1
Cyphrags 17 nov. 2017 à 13:33

Utiliser le tableau de noms d'entrée,

<form action="card_generate.php">
<input type="text" name="t[]">
        <input type="text" name="t[]">
        <input type="text" name="t[]">
        <input type="text" name="t[]">
</form>

Et, vous serez en poste,

print_r($_POST['t']);
2
Naga 16 nov. 2017 à 02:35

Y a-t-il une raison pour laquelle vous ne pouvez pas simplement dire $tabs = $_POST;?

0
Forbs 16 nov. 2017 à 02:52

Vous pouvez également utiliser une boucle foreach comme indiqué dans l'exemple:

HTML

<form method="POST">
<input type="text" name="tZero">
        <input type="text" name="tOne">
        <input type="text" name="tTwo">
        <input type="text" name="tThree">
<input type="submit" name="">
</form>

PHP

<?php

if ( isset($_POST) ) {
    foreach ($_POST as $key => $value) {
        echo "Name: $key, value: $value";
        echo "<br>";
    }
}

?>

RÉSULTAT

Name: tZero, value: first 
Name: tOne, value: hi
Name: tTwo, value: firthfds
Name: tThree, value: fourth value

P.S. N'oubliez pas method="POST" dans votre <form>.

1
UndoingTech 16 nov. 2017 à 02:55
47320589