PHP stocker un post dans un array

Fermé
akarean Messages postés 6 Date d'inscription mercredi 8 janvier 2014 Statut Membre Dernière intervention 16 janvier 2014 - Modifié par akarean le 16/01/2014 à 18:03
akarean Messages postés 6 Date d'inscription mercredi 8 janvier 2014 Statut Membre Dernière intervention 16 janvier 2014 - 16 janv. 2014 à 21:05
Bonsoir à tous,

Je me retrouve confronté au problème suivant:

Dans la création d'un formulaire de commande,

Je parcours ma base de donnée avec un foreach affichant, la référence le format et le prix du produit, et propose de saisir une quantité via input type number à chaque affichage d'article.

Mon formulaire est en méthode POST et j'aimerais récupérer ensuite un array en type multidimensionnelle.

Malgrès mes recherche je ne vois pas du tout comment faire cela.

Si vous avez des idées ou une méthode différente à suivre.

je vous remercie de vos commentaore par avance.


Akarean
A voir également:

2 réponses

Salut,

vous dites:
Malgrès mes recherche je ne vois pas du tout comment faire cela.

Pourtant:
https://www.google.fr/search?q=array+php

Et pour un tableau multidimensionnel... un tableau est forcément multidimensionnel puisque c'est une variable qui en contient plusieurs.
Donc d'abord vous créez votre tableau, ensuite vous mettez des valeurs dedans.

$montableau= new array();
//-- mon tableau existe je peut y mettre des choses

$montableau[0]=htmlspecialchars($_POST['machin']);
$montableau[24]=777;
$montableau[13]=7+$truc;


et si vous avez besoin d'un tableau à plusieurs dimensions il faut créer autant de tableaux que vous en voulez:

$unautretableau= new array('popo', 'pipi', 'papa', 'pupu');

$untableaudetableau= new array($montableau, $unautretablea);

Et donc:

print_r($untableaudetableau[0]); // retourne le tableau $montableau
print_r($untableaudetableau[0][24]);
// retournera la 25ème valeur du tableau $montableau soit 777

et donc:

print_r($untableaudetableau[1][1]);
// affiches comme vous avez deviné: pipi


Pareil avec des tableaux associatifs mais à valeur numérique est plus simple, on peut par exemple l'incrémenter dans un for each(bien que ce soit pas le cas dans votre deande puisque vous voulez récupérer les valeurs d'un formulaire donc vous utilisez le tableau associatif $_POST[]).
0
akarean Messages postés 6 Date d'inscription mercredi 8 janvier 2014 Statut Membre Dernière intervention 16 janvier 2014
16 janv. 2014 à 21:05
Bonsoir Ronto et merci à vous,

Je débute en php et n'en connait pas encore toute les subtilité, et ne voit pas comment obtenir mon résultat avec votre réponse.

Pour mieux m'exprimer, je cherche à obtenir un array de cette forme la(avec extraction var_dump) :


array (size=17)
0 =>
object(stdClass)[4]
public 'clef' => a
public 'photo' => b
public 'designation' => c
public 'format' => d
public 'description' => e
public 'cdt' => f
public 'prix' => g
public 'fiche_tech' => h
public 'couleur' => i
1 =>
object(stdClass)[4]
public 'clef' => j
public 'photo' => k
public 'designation' => l
public 'format' => m
public 'description' =>n
public 'cdt' => o
public 'prix' => p
public 'fiche_tech' => q
public 'couleur' => r
2 =>
object(stdClass)[4]
public 'clef' => s
public 'photo' => t
public 'designation' => u
public 'format' => v
public 'description' =>w
public 'cdt' => x
public 'prix' => y
public 'fiche_tech' => z
public 'couleur' => aa
etc...


à partir d'un post, mais pour le moment je récupére :


array (size=7)
'clef' =>
array (size=17)
1 => string '1' (length=1)
2 => string '2' (length=1)
3 => string '3' (length=1)
4 => string '4' (length=1)
5 => string '5' (length=1)
6 => string '6' (length=1)
7 => string '7' (length=1)
8 => string '8' (length=1)
9 => string '9' (length=1)
10 => string '10' (length=2)
11 => string '11' (length=2)
12 => string '12' (length=2)
13 => string '13' (length=2)
14 => string '14' (length=2)
15 => string '15' (length=2)
16 => string '16' (length=2)
17 => string '17' (length=2)
'designation' =>
array (size=17)
1 => string 'a
2 => string 'z
3 => string 'e
4 => string 'r
5 => string 't
6 => string 'y
7 => string 'u
8 => string 'i
9 => string 'o
10 => string 'p
11 => string 'q
12 => string 's
13 => string 'd
14 => string 'f
15 => string 'g
16 => string 'h
17 => string 'j
etc ....

mes input type sont nommés au milieu de ma balise foreach qui affiche les valeurs de mon premier array.

Mon but est de récupérer les valeurs de mon deuxième array pour les parcourir tel que le premier par un nouveau foreach.



0