Page 1 sur 1

formulaire en html php

Posté : 22 mars 2008, 09:40
par floysand1
Je voudrais donner un nom variable à une zone de texte de façon à récupérer les informations ensuite, le nombre d'informations saisies étant aléatoire.

Voici mon code :
<form action="test.php" method="post">
<input type="text" name="titre">
<?php
for($i=0;$i<3;$i++)
{
echo '<input type="text" name=nom[]>';
}
?>
<input type="submit" value="Valider">
</form>

Dans le document test.php :

<?php
echo $_POST['titre'];

for($i=0;$i<3;$i++)
{
echo "Nom: " .$_POST['nom[]']."<br>";
echo "Nom: " .$_POST['nom[$i]']."<br>";
echo "Nom: " .$nom[$i]."<br>";
echo "Nom: " .$nom[]."<br>";
}
?>

Dans ce 2° document, je n'obtiens rien.
Merci pour votre aide.

Posté : 22 mars 2008, 11:57
par dogmongo
Salut
<form action="test.php" method="post"> 

<input type="text" name="titre"> 

<?php 
for( $i=0; $i<3; $i++ ) 
{ 
echo "<input type=\"text\" name='nom[$i]'>"; 
} 
?> 

<input type="submit" value="Valider"> 

</form> 

Posté : 22 mars 2008, 12:04
par dogmongo
salut,


Je réédite mon message, je n'avais pas compris ce que tu voulais obtenir, dans un premier temps je pense qu'il est beaucoup plus pratique que tu travail sur une seule et même page.

J'ai remarqué que tu avais déclaré aucune variable qui pourrait limiter la deuxième boucle après l'envoi du formulaire

je l'ai nommé $nb
<?php
if(isset($_POST["titre"])){

$nb = $_POST['nb']; 

echo "Titre = $_POST[titre]"; 
echo "Nombre de boucle = $nb"; 


	
	for($i = 0 ; $i < $nb; $i++) 
	{ 
	echo "Nom: " .$nom[$i]."<br>"; 
	} 

}else{ ?>

		<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"> 
		
		Titre : <input type="text" name="titre"> <br />
		
		<?php 
		for( $i=0; $i < 3; $i++ ) 
		{ 
		echo "Test $i <input type=\"text\" name='nom[$i]'><br />\n"; 
		} 
		?> 
		
		<input type="hidden" name="nb" value="<?php echo $i?>">
		 
		<input type="submit" value="Valider"> 
		
		</form> 

<?php } ?> 

formulaire en html php

Posté : 24 mars 2008, 12:24
par floysand1
Merci de ta réponse.
Mais, ça ne marche toujours pas, les informations saisies ne s'affichent pas.
Peut-être ce n'est pas possible d'avoir un nom de zone de texte variable !

Merci pour votre collaboration...

Posté : 24 mars 2008, 13:42
par Hywan
Bonjour,

et si tu essayais :
print_r($_POST);
dans test.php, hm ? Tu y verras plus clair je pense.

formulaire en html php

Posté : 24 mars 2008, 14:33
par floysand1
Un grand grand merci.

La solution est :

echo "Nom: " .$_POST[nom][$i]."<br>";

Merci beaucoup.

Bonne journée.

Posté : 24 mars 2008, 14:55
par zeus
Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)