Bonjour,
Voila je rencontre un petit problème avec mon code.
Jai fait un jquery pour modifier la position de mes menu et j'envoie en json les info, un coup décripter en tableau php je ne sais plus comment accéder a ces valeur
array(12) { [0]=> object(stdClass)#2 (1) { ["id"]=> int(1) } [1]=> object(stdClass)#3 (1) { ["id"]=> int(2) } [2]=> object(stdClass)#4 (1) { ["id"]=> int(3) } [3]=> object(stdClass)#5 (1) { ["id"]=> int(4) } [4]=> object(stdClass)#6 (1) { ["id"]=> int(5) } [5]=> object(stdClass)#7 (1) { ["id"]=> int(6) } [6]=> object(stdClass)#8 (1) { ["id"]=> int(7) } [7]=> object(stdClass)#9 (1) { ["id"]=> int(8) } [8]=> object(stdClass)#10 (1) { ["id"]=> int(9) } [9]=> object(stdClass)#11 (1) { ["id"]=> int(10) } [10]=> object(stdClass)#12 (1) { ["id"]=> int(11) } [11]=> object(stdClass)#13 (1) { ["id"]=> int(12) } }
J'aimerais pouvoir utiliser le tableau pour updater ma base de donnée j'ai fait un code qui le fait pour le menu principale et il me reste a le faire pour les sous menu mais je doit etre capable d'avoir accés au donnée pour cela ...voici le code de mon update menu a titre de démonstration ....
$data = '[{"id":1},{"id":2},{"id":3},{"id":4},{"id":5},{"id":6},{"id":7},{"id":8},{"id":9},{"id":10},{"id":11},{"id":12}]';
$json =json_decode($data);
var_dump($json);
for($i = 0; $i< count($json); $i++)
{
$id = $json[$i][id];
$mysqli->query("UPDATE mp SET position_mp = $i+1 WHERE id_mp = '$id' ") or die ($mysqli->error);
}
merci en avance
Bonsoir.
Utilises plutôt une boucle foreach
, par exemple :
foreach ($json as $k => $v) {
$mysqli->query("UPDATE mp SET position_mp = $k + 1 WHERE id_mp = '$v->id' ") or die ($mysqli->error);
}
La façon d'avoir acces a children dans un foreach est t-il
[{"id":1,"children":[{"id":2}]}]
.
.
.
$valeur2 = $v->children;
foreach($valeur2 as $q => $i){ ...
merci en avance
Oui, mais tu peux directement le mettre ldans la déclaration du foreach, par exemple :
foreach ($json as $k => $v) {
/* .... accès via $v->{key} ($v->id) */
if(isset($v->parent)) {
foreach ($v->parent as $q => $child) {
/* ... accès via $child->{key} ($child->id) */
}
}
}