Valeurs écrasées lors des rechargements ajax

Description du bug / Comment le reproduire

Lors du rechargement ajax d'un squelette inclus avec <INCLURE>, les valeurs que l'on transmet explicitement sont écrasées si le même param est présent en query string dans l'URL.

Pour reproduire rapidement :

Un squelette prive/squelettes/contenu/debug_env_ajax.html

Valeur de 'exec' hors de l'inclusion : <code>[(#ENV{exec})]</code>

<INCLURE{fond=prive/squelettes/inclure/debug_env_ajax, exec='une valeur arbitraire', ajax} />

Un squelette prive/squelettes/inclure/debug_env_ajax.html:

<hr>

Valeur de 'exec' dans l'inclusion : <code>[(#ENV{exec})]</code>

<br /><br />
<a href="[(#SELF)]" class="ajax btn btn_principal">Recharger</a>

Se rendre sur ?exec=debug_env_ajax et cliquer sur le bouton : dans l'inclusion, la valeur #ENV{exec} va changer de une valeur arbitraire à debug_env_ajax

J'ai testé avec exec et id_auteur, je présuppose que c'est pareil avec n'importe quel param.

Comportement attendu / Comportement obtenu

Si on transmet explicitement une valeur à une inclusion, quelle soit vide, nulle ou autre, elle ne doit pas être écrasée.

Autres informations

Au début :

bug_env_avant

Après rechargement ajax :

bug_env_apres

Informations techniques

  • Version de SPIP : 4.4
  • Version de PHP : 8.3
Modification effectuée par tcharlss