Bienvenue, Invité
Nom d'utilisateur : Mot de passe : Se souvenir de moi

SUJET : préremplir la réponse à une question en fonction de l'identifiant de connexion

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94204

  • supernul
  • Portrait de supernul
  • Hors ligne
  • Fresh Lemon
  • Messages : 9
  • Karma: 0
Bonjour,

je souhaite intégré mon questionnaire limesurvey dans une application web qui nécessite une identification. Les personnes se créent un compte et un identifiant unique est associé à chaque compte. Cet identifiant est créé pour des raisons d'anonymat des réponses et de lien avec le deuxième partie du système(web-mapping) lors du traitement de résultats.

Je voudrais que cet identifiant soit intégré de base dans la première question de mon enquête (qui est une partie du système). Je pars du principe qu'un utilisateur pourrait se tromper dans la saisie de son pseudo.

Je n'ai pas trouvé mon bonheur mais je suis peut-être passé à côté.

Mercid e votre aide.
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94219

  • DenisChenu
  • Portrait de DenisChenu
  • Hors ligne
  • Moderator Lime
  • Messages : 6272
  • Remerciements reçus 800
  • Karma: 240
Salut,

Tu peux facilement le faire en utilisant le lien d'arrivée du questionnaire.

docs.limesurvey.org/Workarounds%3A+Surve...ling_survey_elements

Denis
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94236

  • supernul
  • Portrait de supernul
  • Hors ligne
  • Fresh Lemon
  • Messages : 9
  • Karma: 0
Il y a un truc que je ne comprends pas. Voici mon code source :
<?php
 
session_start();
 
// Test de connexion à la base de données.
try {
	$bdd = new PDO("mysql:host=localhost;dbname=CCCCCCC","VVVVVVV","BBBBBBB");
}
catch (PDOException $e){
	die("Erreur : ".$e->getMessage());
}
 
?>
 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
	<head>  
	    <title>Page d'accueil</title>
		<link rel="stylesheet" href="CSS/accueil.css" type="text/css">
	</head>
	<body>
		<div id="bonjour">
			Bienvenue <?php echo $_POST['login']; ?>
		</div>
		<div id="limesurvey">
			<object data="http://localhost/limesurvey/index.php/499219/lang-fr?sid=499219X1X36=$_POST['login']" type="text/php" width="100%" height="800px"/>
		</div>
	</body>
</html>

Je tombe sur la première page de mon questionnaire qui tourne en boucle quand je valide pour passer à la page suivante.
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94239

  • DenisChenu
  • Portrait de DenisChenu
  • Hors ligne
  • Moderator Lime
  • Messages : 6272
  • Remerciements reçus 800
  • Karma: 240
Pas sur que object fonctionne pour les formulaires,

Une iframe plutot.

Et:
"http://localhost/limesurvey/index.php/499219/lang-fr/499219X1X36=".urlencode($_POST);
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94243

  • supernul
  • Portrait de supernul
  • Hors ligne
  • Fresh Lemon
  • Messages : 9
  • Karma: 0
j'essaie avec cette version :
<?php
 
session_start();
 
// Test de connexion à la base de données.
try {
	$bdd = new PDO("mysql:host=localhost;dbname=CCCCCCC","VVVVVVV","BBBBBBB");
}
catch (PDOException $e){
	die("Erreur : ".$e->getMessage());
}
 
?>
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
	<head>  
	    <title>Page d'accueil</title>
		<link rel="stylesheet" href="CSS/accueil.css" type="text/css">
	</head>
	<body>
		<div id="bonjour">
			Bienvenue <?php echo $_POST['login']; ?>
		</div>
		<div id="limesurvey">
			<?php 
				echo '<iframe src="http://localhost/limesurvey/index.php/499219/lang-fr?sid=499219&499219X1X36='.urlencode($_POST['login']); 
				echo '" width="100%" height="90%" frameborder=0></iframe>';
			?>
		</div>
	</body>
</html>

car
<?php 
	echo '<iframe src="http://localhost/limesurvey/index.php/499219/lang-fr/499219X1X36='.urlencode($_POST['login']); 
	echo '" width="100%" height="90%" frameborder=0></iframe>';
?>

ma première question qui est une zone de texte court devrait se remplir mais il n'en n'est rien. Même en remplaçant .urlencode($_POST) par bob ou "bob", la zone de texte n'est pas préremplie. Et je ne vois pas pourquoi car même en rentrant directement http://localhost/limesurvey/index.php/499219/lang-fr?sid=499219&499219X1X36=bob dans la barre d'adresse de firefox j'obtiens le même résultat.

Cela ne fonctionnerait-il qu'avec certains type de questions ?
Dernière édition: il y a 1 an 5 mois par supernul.
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94245

  • supernul
  • Portrait de supernul
  • Hors ligne
  • Fresh Lemon
  • Messages : 9
  • Karma: 0
Je double poste même si c'est mal pour dire que j'ai trouvé la réponse : il faut utiliser $_SESSION auquel a été préalablement affecté $_POST.

Merci de ton aide DenisChenu, car je n'aurais pas trouvé avant un bon moment.
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94301

  • DenisChenu
  • Portrait de DenisChenu
  • Hors ligne
  • Moderator Lime
  • Messages : 6272
  • Remerciements reçus 800
  • Karma: 240
supernul écrit:
[...]
Et je ne vois pas pourquoi car même en rentrant directement http://localhost/limesurvey/index.php/499219/lang-fr?sid=499219&499219X1X36=bob dans la barre d'adresse de firefox j'obtiens le même résultat.
Non, no :
- http://localhost/limesurvey/index.php/499219/lang-fr/499219&499219X1X36/bob
ou
- http://localhost/limesurvey/index.php/499219/lang-fr?499219&499219X1X36=bob

Sinon, pas de problème pour le double post.

Bien que je n'ai pas réellement compris ?
Tu as réessayer avec objet ? A mon avis, cela reprend le lien complet, et cela ejecte les données POST.

Denis
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 5 mois #94356

  • supernul
  • Portrait de supernul
  • Hors ligne
  • Fresh Lemon
  • Messages : 9
  • Karma: 0
Je n'ai pas réessayé avec object. Je regarderai sans doute plus tard.

Maintenant il faut que je vérifie ma gestion des sessions car si l'utilisateur commence l'enquête et s'arrête avant la fin du premier groupe de questions, quand il recharge le questionnaire, la première question préremplie reste vide.
L'administrateur a désactivé l'accès en écriture pour le public.

préremplir la réponse à une question en fonction de l'identifiant de connexion il y a 1 an 3 mois #95441

  • supernul
  • Portrait de supernul
  • Hors ligne
  • Fresh Lemon
  • Messages : 9
  • Karma: 0
l'écriture suivante ne fonctionne pas sous windows alors qu'elle fonctionne très bien sous linux :
echo '<iframe src="http://localhost/CRI/enquete/limesurvey/index.php/499219/lang-fr?499219&499219X1X23/'.urlencode($_SESSION['login']).'" width="100%" height="100%" frameborder=0></iframe>';
Avez-vous une idée ? Malgré mes recherches je ne trouve pas d'explication.
Ma version de travail est la toute dernière.
Merci de votre aide.
L'administrateur a désactivé l'accès en écriture pour le public.
Modérateurs: Nickko
Temps de génération de la page : 0.392 secondes
Donation Image