Une variable pour plusieur données
Résolu
dourlens59
Messages postés
72
Statut
Membre
-
jeremy.s Messages postés 1248 Statut Membre -
jeremy.s Messages postés 1248 Statut Membre -
Bonjour,
J'ai un formulaire ou j'ai plusieurs champs "paragraphe" a remplir. A chaque fois les données que j'inscrit vont dans la variable "$paragraphe", ce que je voudrais c'est arriver à m'y retrouver dans ces données, via un tableau ou autre, et par la suite l'insérer dans un paragraphe
Cdt,
J'ai un formulaire ou j'ai plusieurs champs "paragraphe" a remplir. A chaque fois les données que j'inscrit vont dans la variable "$paragraphe", ce que je voudrais c'est arriver à m'y retrouver dans ces données, via un tableau ou autre, et par la suite l'insérer dans un paragraphe
Cdt,
9 réponses
-
oui ou en metant en plus le même index dans le name=xxxxx[numParagraphe] de liste et textarea
c'est plus facile ensuite d'assurer la correspondance entre le type et le contenu texarea<?php if(isset($_POST['Nouv_Para']))//Si on appuie sur le bouton Nouv_para { $nbParagraphe = $_POST['nb_para'] +1; $numParagraphe=1; for($i = 1; $i <= $nbParagraphe ; $i++) { echo '<br><label class="margeG" for="para"> Type Paragraphe : </label> <select name="liste_type1['.$numParagraphe.']"> <option value="texte"> Texte </option> <option value="lien"> Lien </option> <option value="image"> Image </option> <option value="media"> Média </option> </select><br/> <br/> <label class="margeG"> Paragraphe '.$numParagraphe.' : </label> <textarea name="paragraphe['.$numParagraphe.']" rows="8" cols="45" >'.$paragraphe.'</textarea>'.'<br>'; $numParagraphe++; } echo '<input type="hidden" name="nb_para" value="'.$nbParagraphe.'">'; } else { echo '<input type="hidden" name="nb_para" value="">'; } //et pour récupérer: for($i=1;$i<=sizeof($_POST['liste_type1']);$i++){ echo 'Paragraphe n°'.$i.'<br />'; echo 'Type: '.$_POST['liste_type1'][$i].'<br />'; echo nl2br($_POST['paragraphe'][$i]; } ?> -
Salut !
Il faut également que tu récupère ton sélect comme tes textarea :
<select name="liste_type[]">
En post, tu vas alors recevoir deux tableaux : Celui de tes sélect et celui de tes textarea.
Donc par exemple, $_POST['liste_type'][1] correspond au select du paragraphe $_POST['paragraphe'][1]
Pour récuper toutes tes valeurs (select et paragraphe), un tu suffis d'une boucle avec un i qui s'incrémente et dans chaque tour de boucle tu ira cherché $_POST['liste_type'][$i] et $_POST['paragraphe'][$i]
-
J'ai pas tout compris...
En gros tu as un formulaire avec plusieurs champs et tu arrives pas à récupérer chaque champ dans une variable différente, c'est ça ? -
Merci de ta réponse
En faite j'ai un formulaire, où à chaque fois je rajoute autant de paragraphe que je veux, et à chaque fois les données de N paragraphe se trouverons dans la variables $paragraphes.
<?php
if(isset($_POST['Nouv_Para']))//Si on appuie sur le bouton Nouv_para
{
$nbParagraphe = $_POST['nb_para'] +1;
for($i = 1; $i <= $nbParagraphe ; $i++)
{ $numParagraphe++;
echo '<br><label class="margeG" for="para"> Type Paragraphe : </label>
<select name="liste_type1">
<option value="texte"> Texte </option>
<option value="lien"> Lien </option>
<option value="image"> Image </option>
<option value="media"> Média </option>
</select><br/>
<br/>
<label class="margeG"> Paragraphe '.$numParagraphe.' : </label>
<textarea name="paragraphe[]" rows="8" cols="45" >'.$paragraphe.'</textarea>'.'<br>';
}
echo '<input type="hidden" name="nb_para" value="'.$nbParagraphe.'">';
}
else
{
echo '<input type="hidden" name="nb_para" value="">';
}
?>
Ce que je voudrais c'est pouvoir traiter chaque données de chaque paragraphe. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Un grand merci Alan ! Tu m'as bien aider
Mais c'est que je voudrais c'est pouvoir récupérer le contenu de chaque paragraphe afin de pouvoir les intégrer dans ma base de données dans mon champs 'contenu' , dans ma base là, on voit "array" dans le contenu quand j'essaye de les intégrer.
Cdt, -
Tu obtiens un tableau avec chacun de tes paragraphes, à toi de les traiter après, le plus simple c'est de faire une boucle sur ton tableau.
-
C'est pas vraiment ce que je voulais faire,
Voici mon code :
Haut de page :
if(isset($_POST['valider']) OR isset($_POST['Nouv_Para']))
{ //On récupère les données rentrer dans les champs
$nbParagraphe=$_POST['nb_para'];
$contenuParagraphe1=$_POST['contenuParagraphe1']
}
Plus bas :
for($numParagraphe = 1; $i <= $nbParagraphe ; $numParagraphe++)
{
echo
'<label class="margeG"> Paragraphe '.$numParagraphe.' : </label>
<textarea name="contenuParagraphe'.$numParagraphe.'" rows="8" cols="45" > '.$contenuParagraphe1.' </textarea>'.'<br>';
$numParagraphe++;
}
echo '<input type="hidden" name="nb_para" value="'.$nbParagraphe.'">';
}
else
{
echo '<input type="hidden" name="nb_para" value="">';
}
Ce que je voudrais c'est que dans mon textarea, ma boucle créer une variables qui se concatène avec le num du paragraphe.
Que ma boucle créer des variables avec le contenu : $contenuParagraphe2,$contenuParagraphe3, etc .. autant de fois que j'aurais créer de paragraphe.
Cdt -
ma boucle créer une variables qui se concatène avec le num du paragraphe
c'est tout à fait possible, mais pourquoi n'utilises tu pas la solution proposée par jeremy.s ou moi-même avec les array en en mettant comme name = xxxx[] ce qui est beaucoup plus simple.
fais au moins l'essai -
D'autant plus que c'est plus propre et très correct de faire ca, donc même avis qu'Alain !