revoir l'organisation d'un array (index, association)
Bonjour,
je vous ecris car j'ai un problème sur lequel je suis et qui me tue !!
J'avais deja fai un post a ce sujet mais en fait l'approche que je vous ai présenté n'était pas bonne =( aussi j'ai tout refais !!
J'espere vraiment qu'on pourra m'aider faute de quoi je devrais abandonner mon projet =(
Voila j'ai un array "$info" avec plusieurs dimensions que j'ai formaté avec la fonction suivante
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
function afficher_tableau($tableau)
{
// on fait une boucle qui lit les éléments du tableau
foreach ($tableau as $cle=>$valeur)
{
// si l'un des éléments est lui même un tableau
// alors on applique la fonction à ce tableau
if(is_array($valeur))
{
// on affiche le nom de la clé et
// le début d'une liste pour
// décaler le contenu vers la droite
echo $cle.' : <ul>';
// ici se réalise la récursivité
// c'est à dire qu'on applique la fonction
// à l'élément en cours car c'est lui aussi un tableau
trim(afficher_tableau($valeur));
// on ferme la liste
echo '</ul>';
}
// si ce n'est pas un tableau
// alors on affiche le contenu de l'élément
else
{
echo $cle.' = '.$valeur.' <br>';
}
}
}
afficher_tableau($info); |
En sortie "afficher_tableau($info)" donne ca :
Citation:
0 :
0 = Diagonale 40" - écran large
1 = Technologie Matrice active TFT
2 = Résolution 1920 x 1080
3=......
1 :
0 = Diagonale
1 = Technologie
2 = Résolution
3=......
2 :
0 = 40" - écran large
1 = Matrice active TFT
2 = 1920 x 1080
3=......
Mon but est le suivant : insérer que certaines infos dans ma table .
D'un point de vue algo cela donnerai :
Code:
$arrayTitreAccepte = ('diagonale','resolution','...');
si [1:]titre ==> est dans mon array, j'insère dans ma table la valeur contenu dans [2:]valeur.
Cf le tableau plus haut.
Donc cela implique que je "revois" l'organisation de mon array, et de ses index =(
Car mon titre est dans la partie "1:" et la valeur associé au meme niveau dans le "2:" (je ne sais pas si je suis assez claire)
Et le je ne saiss absolument pas comment faire ca, j'ai passé tout mon dimanche a cherché en vain =(
On m'avais proposé ca mais le resultat au moment de l'insert n'est pas bon
Code:
1 2 3 4 5 6 7
|
<?php
$values = array();
foreach($info as $cle => $val)
$values[] = "('".$info[$cle][0]."', '".$info[$cle][2]."')";
$sql = "INSERT INTO jeux (`diagonale`,`resolution`) VALUES ".implode(',', $values);
?> |
s'il vous plait, si quelqu'un peut m'aider =( sans vous et votre aide je n'ai plus qu'a abandonner mon projet =(