Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

ExpressionScript : tester si une réponse est sasie

More
3 weeks 2 hours ago #273981 by pasglop
Bonjour

J'ai une question champ texte toute simple et souhaite vérifier dans la question suivante si une réponse est saisie. Les différents tests donne des résultats valides SAUF dans un cas : si le répondant saisit "false" en minuscule.

Les tests :
Code:
{if(!is_empty(Q00), "Pas Vide", "Vide")}
{if(strlen(Q00)!=0, "Pas Vide", "Vide")}
{if(Q00 + "" != "", "Pas Vide", "Vide")}
{if(Q00 != "" || Q00 == "0", "Pas Vide", "Vide")}
{if(!is_empty(Q00.code), "Pas Vide", "Vide")}
{if(strlen(Q00.code)!=0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.NAOK), "Pas Vide", "Vide")}
{if(strlen(Q00.NAOK)!=0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.value), "Pas Vide", "Vide")}
{if(strlen(Q00.value)!=0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.valueNAOK), "Pas Vide", "Vide")}
{if(strlen(Q00.valueNAOK)!=0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.shown), "Pas vide", "Vide")}
{if(strlen(Q00.shown)!=0, "Pas Vide", "Vide")}

Cf les 3 copies d'écran.

Est-ce possible contrer ce problème ?

Cdmt,

Please Log in to join the conversation.

More
2 weeks 6 days ago #273985 by DenisChenu
Sacrée merde !

À rapporter ! Clairelent un bogue !

Sur tes screen : is_empty(Q0.shown) semble fonctionnel.

Sinon, ce qui devrait fonctionner, les autres ne sont pas conçus pour cela :
Code:
{if(!is_empty(Q00), "Pas Vide", "Vide")}
{if(strlen(Q00)>0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.code), "Pas Vide", "Vide")}
{if(strlen(Q00.code)>0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.NAOK), "Pas Vide", "Vide")}
{if(strlen(Q00.NAOK)>0, "Pas Vide", "Vide")}
{if(!is_empty(Q00.shown), "Pas Vide", "Vide")}
{if(strlen(Q00.shown)>0, "Pas Vide", "Vide")}

et vérfifier ce que donne {strlen(Q00.NAOK)} qui devraot donner 5 pour false.

En fait ; je rapporterais 2 bogues : un sur is_empty et 1 sur strlen



 

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member. - Professional support - Plugins, theme and development .
I don't answer to private message.

Please Log in to join the conversation.

More
2 weeks 6 days ago - 2 weeks 6 days ago #273986 by pasglop
J'avais oublié d'indiquer ma version :
LimeSurvey Community Edition Version 6.16.10+260223 
- PHP 8.4.18
- Debian GNU/Linux 13


Merci pour cette confirmation :-))
Je viens d'ajouter le valeurs de strlen et cela va dans le même (mauvais) sens mais je pense que le souci est plus dans la lecture de {Q00}.
Ok pour le rapporter.
Last edit: 2 weeks 6 days ago by pasglop.
The following user(s) said Thank You: DenisChenu

Please Log in to join the conversation.

More
2 weeks 2 days ago #274025 by DenisChenu
On a le correctif, mais j'ai peur que celui-ci entraîne d'autres problèmes.
On est sur du code d'ily 4/5 ans ...

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member. - Professional support - Plugins, theme and development .
I don't answer to private message.

Please Log in to join the conversation.

Moderators: Nickkoholchtpartner

Lime-years ahead

Online-surveys for every purse and purpose