Welcome, Guest
Username: Password: Remember me

TOPIC: Inscription à la fin du questionnaire ?

Inscription à la fin du questionnaire ? 1 year 9 months ago #83304

  • eltito
  • eltito's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 3
  • Karma: 0
Bonjour,

Je découvre LimeSurvey et le trouve fort bien intéressant.
Je rencontre cependant un problème. Dans la conception de mon questionnaire public, je récupère les informations de la personne en dernier lieu, avant l'enregistrement des réponses. L'adresse email étant une réponse à une question, je ne peux donc pas effectuer de vérification si elle est déjà présente.

Le questionnaire étant public, il me semble bon de pouvoir y accéder sans token mais que celui ci soit cependant créé et enregistré à la fin du questionnaire.

Ce que j'aimerai, c'est utiliser l'enregistrement à la fin du questionnaire et non au début. Est-ce possible ?
The administrator has disabled public write access.

Re: Inscription à la fin du questionnaire ? 1 year 9 months ago #83307

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Salut,
je te dirai que non et surtout je ne vois pas vraiment l'intérêt car si quelqu'un indique n'importe quelle adresse email inventée à la volée, elle ne risque pas d'être en double :laugh:
L'intérêt majeur des tokens c'est justement d'envoyer le link de l'enquête par email et donc de ce fait de vérifier cette adresse...
Si c'est vraiment ce que tu souhaites, oublies tout des invitations, mets une question de texte pour récupérer l'email et construit ou adapte un script en php qui interrogera la base de donnée pour voir si l'adresse existe ou non...

Le mieux je pense et beaucoup plus simple: Autoriser 'l'enregistrement public' dans les préférences générales de l'enquête
Ben/
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
Last Edit: 1 year 9 months ago by Ben_V.
The administrator has disabled public write access.

Re: Inscription à la fin du questionnaire ? 1 year 9 months ago #83336

  • eltito
  • eltito's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 3
  • Karma: 0
Merci de la réponse.

Afin d'éviter d'éventuels doublons, on a préféré mettre cette solution en place. Et en effet, si c'est public, c'est difficile de restreindre après coup. Donc, sur le message de fin du questionnaire, je lance un appel Ajax vers la suppression des doublons.

Pour ceux qui en auraient besoin, je vous livre le code utilisé :

dans le message end du questionnaire :
$(document).ready(function() {
  var d = new Object();
  d.email = '{INSERTANS:SGQA}';
  d.sid = '{SID}';
  d.fn = 'SGQA';
    $.ajax({
      type: 'POST',
      url: 'checkmail.php',
      data: d,
      success: function(t){console.log(t)}
    });
  });
dans le checkmail.php :
$query = "SELECT $fieldName FROM {$dbprefix}survey_{$surveyid}\n"
. "WHERE $fieldName = ".db_quoteall(sanitize_email($email));
$result = $connect->Execute($query) or safe_die ($query."<br />".$connect->ErrorMsg());
if (($result->RecordCount()) > 0)
{
    $connect->Execute("DELETE n1 FROM {$dbprefix}survey_{$surveyid} n1, {$dbprefix}survey_{$surveyid} n2 WHERE n1.{$fieldName} = ".db_quoteall(sanitize_email($email))." AND n1.id > n2.id AND n1.{$fieldName} = n2.{$fieldName}");
    if ( $connect->Affected_Rows() ) {
        die('done');
    } else {
        die('fail');
    }
} else {
    die('useless');
}
The administrator has disabled public write access.

Re: Inscription à la fin du questionnaire ? 1 year 9 months ago #83345

  • Ben_V
  • Ben_V's Avatar
  • OFFLINE
  • Platinum Lime
  • Posts: 937
  • Thank you received: 194
  • Karma: 62
Ben merci à toi pour le retour et ce bon bout de code qui peut être bien utile à plus d'un d'entre-nous.. :cheer:

Sinon à ce niveau là, si ça vous tente c'est facile d'envoyer les réponses à la personne qui as laissé son email !
C'est par ici

Benoît
Benoît

goo.gl/Bw5iM => Recherche GG dans le forum français (remplacer "exemple" dans la barre de recherche)
goo.gl/WX8PH => GG search for english forum (Replace "example" in the search bar)
goo.gl/IxiGu => Búsqueda en el foro en español (Cambiar "ejemplo" en la barra de...
The administrator has disabled public write access.
Moderators: Nickko
Time to create page: 0.156 seconds
Donation Image