Valider f7940b0b rédigé par Maïeul's avatar Maïeul
Parcourir les fichiers

Afficher_si,

la syntaxe `@toto@ IN 'A,B'` était prévue au départ pour les cas où
`toto` renvoie un array.

Mais côté JS, elle marchait également si @toto@ était une chaine.
Donc `@toto@ IN 'A,B'` était équivalent à `@toto@ == 'A' || @toto@ ==
'B'`. Sans doute une erreur de ma part lors de la réécriture il y a
quelques temps.

Cependant, maintenant que c'est fait, cela parait plutôt
logique/pratique.

Du coup on étend aussi cela côté PHP...

cf. https://contrib.spip.net/Formidable-le-generateur-de-formulaires#comment510112

Cela répond du reste à une demande formulé dans la discussion sur le
sens de `IN` en #44.

Close #163

Fix #44
Pour résumer :
- si le champ est monovalué, IN a le sens de "la valeur appartient à ce
tableau"
- si le champ est tabulaire, IN a le sens historique de "au moins une
valeur appartient à ce tableau" (donc plutôt un INTERSECTION)
- on laisse tomber de changer de syntaxe pour exprimer une vrai
INTERSECTION + on garde la petite erreur logique sur IN qui prend le
sens d'intersection
- a priori, pas besoin de dev un INCLUS, et si c'est le cas on fera plus
tard.
parent 34569c4c
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter