Array dans methode post

Salut tout le monde,

voila j'aimerais savoir s'il est possible d'envoyer un array par methode post ou get, et si non, es ce que quelqu'un aurait une idée pour pallier à ce probleme.
c'est un tableau tridimensionnel, qui contient tout le cv des personnes que j'aimerais envoyer dans une page qui me generera le fichier pdf du cv.

Merci d'avance a tous.
Configuration: Windows 2003 Internet Explorer 7.0

15 réponses

  1. Oui, c'est possible, il suffit de nommer tes variables de formualire de la manière suivante : name="variable[clé]".
    0
    1. ???? je crois que je n'ai pas compris :(

      par ta methode, je vais devoir faire un input type="hidden" pour chaque valeur de mon tableau.
      alors que j'aurais voulu l'envoyer en entier en 1 fois. car le tableau est pas très petit donc... :s
      0
      1. Bonjour,

        Voici un exemple concret de tableau dans la méthode post :
        <pre>
        <?php
        	if(!empty($_POST)){
        		print_r($_POST);
        	}
        ?>
        </pre>
        <form action="#" method="post">
        	Tableau unidimensionnel :<br />
        	<input type="text" name="simple[]" /><br />
        	<input type="text" name="simple[]" /><br />
        	<input type="text" name="simple[]" /><br />
        	<input type="text" name="simple[]" /><br />
        
        	Tableau multidimensionnel :<br />
        	Ligne 1 :<br />
        	<input type="text" name="complexe[ligne1][]" /><br />
        	<input type="text" name="complexe[ligne1][]" /><br />
        	<input type="text" name="complexe[ligne1][]" /><br />
        	<input type="text" name="complexe[ligne1][]" /><br />
        	
        	Ligne 2 :<br />
        	<input type="text" name="complexe[ligne2][a]" /><br />
        	<input type="text" name="complexe[ligne2][b]" /><br />
        	<input type="text" name="complexe[ligne2][c]" /><br />
        	<input type="text" name="complexe[ligne2][d]" /><br />
        
        	<input type="submit">
        </form>


        En validant ce formulaire vous aurez la structure des tableaux.

        Bonne journée,
        0
        1. ok bon ba c'est bien ce que je disais, il me faut 1 input par valeur :( j'vais en passer du temps la dssu ... -_-'
          si j'avais su, j'aurais tout mis dans un fichier plutot que faire un tableau
          0
          1. arf et avec un tableau extensible on fait comment? lol 'sui mal barré m'sieu !

            $impr['experience'][$i]['debut']=list($moisdebut,$anneedebut)=split('-',$row['datedebut_experience']);


            avec ce type de valeur par exemple
            0
            1. Bonjour,
              Honnêtement je ne comprend absolument pas la valeur que vous avez indiquée, veuillez la simplifier ou en faire plusieurs s'il vous plait.
              0
              1. et avec serialize c'est faisable? le hic, c'est que j'ai rien compris a cette fonction mais apparament ça serait possible non?
                0
                1. elle n'est pourtant pas si dur, si?

                  $impr['experience'][$i]['debut']=list($moisdebut,$anneedebut­)=split('-',$row['datedebut_experience']);

                  |-$impr
                  |-------|experience
                  |--------------------|$i (une variable incrémentée dans une boucle)
                  |--------------------------------|debut
                  |--------------------------------|fin
                  |--------------------|$i+1
                  |--------------------------------|debut
                  |--------------------------------|fin
                  |--------------------|$i+2
                  |--------------------------------|debut
                  |--------------------------------|fin
                  |--------------------|$i+3......
                  |--------------------------------|debut
                  |--------------------------------|fin
                  |-------|formation
                  |--------------------|$i
                  |--------------------------------|debut
                  |--------------------------------|fin
                  |--------------------|$i+1
                  |--------------------------------|debut
                  |--------------------------------|fin
                  |--------------------|$i+2...
                  |--------------------------------|debut
                  |--------------------------------|fin

                  voila, c'est mieu comme ça?
                  0
                  1. Je crois que je ne comprends pas... Ton tableau vient d'où ? Il contient quel type de valeurs (donne la structure) ? Tu veux en faire quoi ?
                    0
                2. Bonjour,

                  Je ne vois pas où est le problème, l'envoi des valeurs par POST et le traitement que fait cette ligne sont dutilisés séparément.

                  Les deux "=" m'ont perturbés.
                  0
                  1. <?php
                    $impr['nom']=PremiereMajuscule($Res['nom_jeune']);
                    $impr['prenom']=PremiereMajuscule($Res['prenom_jeune']);
                    $impr['adresse']=$Res['adresse_jeune'];
                    $impr['codepostal']=$Res['codepostal_jeune'];
                    $impr['tel_fixe']=$Res['telephone_jeune'];
                    $impr['mobile']=$Resu['mobile_jeune'];
                    $impr['age']=age($Res['datenaissance_jeune'];
                    // photo a mettre dans le if lien != "" 
                    $impr['photo']=$Res('lienphoto_jeune'];
                    
                    //a mettre apres $sql select * from cv...
                    $impr['titre']=PremiereMajuscule($Resultat['titre_cv']);
                    
                    //competence : a mettre apré n12br($resultat['competence....
                    $impr['competence']=nl2br($Resultat['competence_cv']);
                    
                    //habilité a mettre apré n12br($resultat['habilite...
                    $impr['habilite']=nl2br($Resultat['habilite_cv']);
                    
                    //experience : tableau multidimensionnel pour chak exp
                    //a mettre dans le while($row = mysql_fetch_assoc($Result)) + ajouter $i++ dans le while
                    //avant if $anneedebut==anéfin 
                    $impr['experience'][$i]['debut']=list($moisdebut,$anneedebut)=split('-',$row['datedebut_experience']);
                    $impr['experience'][$i]['fin']=list($moisfin,$anneefin)=split('-',$row['datefin_experience']);
                    
                    //poste_experience
                    $impr['experience'][$i]['poste']=$row['poste_experience'];
                    
                    //entreprise
                    $impr['experience'][$i]['entreprise']=$row['entreprise_experience'];
                    
                    //a mettre apré if $row['duree...]!=""
                    $impr['experience'][$i]['duree']=$row['duree_experience'];
                    
                    //formation : a mettre apré le while ligne 138 + mettre j++ pour chaque formation
                    $impr['formation'][$j]['annee']=$row['annee_formation'];
                    
                    //a mettre apré if resu =! autre
                    $impr['formation'][$j]['diplome']=$resu['nom_diplome'];
                    $impr['formation'][$j]['intitule_formation']=$row['intitule_formation'];
                    $impr['formation'][$j]['ecole']=$row['ecole_formation'];
                    
                    //divers k-> increment pr permis a mettre ds while nombre permis=...
                    $impr['permis'][$k]=$nombre['libelle_permis']
                    
                    //divers je sais pas
                    $impr['divers']=nl2br($Resultat['divers_cv']);
                    ?>


                    c'est mieux la?

                    sinon pour les 2 '=', ce n'est rien de génant, juste un oubli de suppression ^^
                    0
                    1. la pause porte conseil ^^ je vais générer le code des <input.....> en php, comme ça je vais pouvoir l'inclure dans une boucle qui créera les lignes nécéssaires
                      0
                      1. Ben voilà, c'est aussi simple que ça ! Il me semblait bien que je n'avais pas compris ta requête au départ...
                        0
                        1. le hic la, c'est que dans mon form, j'ai mis, comme conseillé,

                          <input type='hidden' name="impr['nom']" value="<?php print $impr['nom'] ?>" >


                          jusque là, tout va bien. Une fois que je valide, j'arrive sur l'autre page, mais je récupére comment cette valeur impr['nom']?

                          $_POST['impr['nom']']? ou $_POST['impr']['nom']? y'a encore une histoire de magic quote la dedans j'parie. J'ai du mal a m'en sortir avec ça... :s
                          0
                          1. $POST['impr'] est un tableau, tu l'utilises comme n'importe quel tableau... Donc tu fais un joli $_POST[impr']['nom'].
                            0
                        2. Bonjour,

                          La bonne solution est $_POST['impr']['nom'], cependant je doute que les apostrophes soient nécessaires dans l'input hidden pour le name :

                          <input type='hidden' name="impr[nom]" value="<?php print $impr['nom'] ?>" >

                          0
                          1. Effectivement, les quotes ne sont pas nécessaires.
                            0
                        3. impeccable merci beaucoup ça marche; Je vais essayer de ne pas me noyer dans tout ça et de toute facon, me connaissant (et doué comme je suis) dans 5 minutes cui de retour parce que j'aurais encore fait n'importe quoi lol. Bonne après midi quand même et peut etre a tout de suite :p
                          0
                          1. Courage, ça va venir ! Et puis on est là pour lancer des bouées !
                            0