OVH Cloud OVH Cloud

Action partielle sur tableau a plusieurs dimensions

2 réponses
Avatar
eugenol
Bonjour,

Je cherche à appliquer stripslashes() sur une seule clé ('bar') d'un
tableau à 3 dimensions: $_POST['foo'][]['bar'] mais n'y parviens pas.

Voici ma boucle:

for( reset($_POST['foo']), $key = key( $_POST['foo']), next(
$_POST['foo'] ){
$$key['bar'] = stripslashes( $_POST['foo'][$key]['bar']);
}

Une idée pourquoi cela ne fonctionne pas ?



(avec magic_quote_gpc à ON, l'interêt est d'éviter un double
echappement des quotes pour certaines valeurs postées depuis un
formulaire créé en javascript en utilisant le DOM. Je fais peu de
javascript, mais constate que ce formulaire dynamique échappe déjà
les quotes avant postage)

Merci pour votre aide

2 réponses

Avatar
Cleo
for( reset($_POST['foo']), $key = key( $_POST['foo']), next(
$_POST['foo'] ){
$$key['bar'] = stripslashes( $_POST['foo'][$key]['bar']);
}
Déjà, mets de [;] dans le for à la place des [,]


(avec magic_quote_gpc à ON, l'interêt est d'éviter un double
echappement des quotes pour certaines valeurs postées depuis un
formulaire créé en javascript en utilisant le DOM. Je fais peu de
javascript, mais constate que ce formulaire dynamique échappe déjà
les quotes avant postage)
Peux-tu fournir le js utilisant DOM et postant les informations au serveur,

de façon que l'on soit dans ton context, parcequ'un $_POST de dimension 3,
j'en ai encore jamais vu ... mais pourquoi pas ...

Avatar
marc.quinton-PAS-DE-
wrote:


for( reset($_POST['foo']), $key = key( $_POST['foo']), next(
$_POST['foo'] ){
$$key['bar'] = stripslashes( $_POST['foo'][$key]['bar']);


et pourquoi pas :

$_POST['foo'][$key]['bar'] = stripslashes( $_POST['foo'][$key]['bar']);

l'expression semble correcte a droite et pas a gauche.