[Doctrine/Twig] Problème à l'update

Par sytrys59, il y a 9 ans


Bonjour,

Je dois permettre aux utilisateurs de mon application de modifier le contenu de différents panels. Je le fais donc sous forme fenêtre modale avec un WYSIWYG. Mais à l'update rien ne se passe, ou j'ai un Notice : array to string conversion. Pour moi, il en devrait pas être là.

Le html :

<div class="modal-body"> <form method="post" action="{{ path("modifierBoiteOutils") }}"> {% for datas in dataBoiteOutils %} {% if fonctionUser >= datas.id_fonction %} <div class="linkBoiteOutils{{loop.index}}"> <a title="{{datas.content}}">{{ datas.content | striptags | slice(0, 20) }} [...]</a> </div> <br/> <div class="hideBoiteOutils{{loop.index}}"> <textarea id="textarea{{loop.index}}" class="ckeditor" name="boiteOutils[]" style="width:80%; height: 400px; display: hidden;">{{datas.content}}</textarea> <input type="hidden" name="id[]" value="{{datas.id}}"> <input type="submit" name="submit" id="test" value="Valider" style="margin-bottom: 10px; margin-top: 10px;"/> </div> <script> $('.hideBoiteOutils{{loop.index}}').hide(); $(document).on("click", ".linkBoiteOutils{{loop.index}}", function(){$(".hideBoiteOutils{{loop.index}}").toggle();}); </script> {% endif %} {% endfor %} </form> </div> </div>

Le controlleur :

public function modifierBoiteOutils(Application $app, Request $request){ $content = $request->get('boiteOutils'); $id = $request->get('id'); $queryBuilderModifBoiteOutils = $app['db']->createQueryBuilder(); $i = 1; while($i<=count($content)){ $queryBuilderModifBoiteOutils->update('contenu')->set("content", "$content[$i]")->where("id = $id[$i]"); $queryBuilderModifBoiteOutils->execute(); $i++; } //var_dump($content); //var_dump($id); }

Mes var dump retournent bien les tableaux attendus.
De plus, il y a quelque chose de bizarre au niveau du [$i] : le crochet fermant semble ne pas être pris en compte (rouge au lieu de jaune dans mes guillements sur sublim text). Je n'ai pas vu d'oublis de caractères ...

1 réponse

Grafikart, il y a 9 ans

Je ne comprends pas trop pourquoi tu fais ça : "$content[$i]"