J'ai également transformé le fichier printanswers.php de la distribution en printCS.php que je place à la racine de l'installation et que j'appelle avec les paramètres de questionnaire, de numéro de réponse, ...
A adapter sans doute, mais cela suffisait pour conserver une trace papier correcte d'une inscription.
Anne
PS : je n'arrive pas à envoyer de fichier attaché ni à inclure le fichier car il contient trop de liens
voici le début du script
Code:
<?php
/*
* affichage récapitulatif uniquement des informations non vides
* LimeSurvey
* Copyright (C) 2007 The LimeSurvey Project Team / Carsten Schmitz
* All rights reserved.
* License: GNU/GPL License v2 or later, see LICENSE.php
* LimeSurvey is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*
* $Id: printanswers.php 9858 2011-03-08 12:50:47Z c_schmitz $
*
*/
$H1entete = "" ;
require_once('formation_config.php');
@session_start();
if (isset($_REQUEST['id'])) $id=(int)$_REQUEST['id']; else die("Identifiant manquant");
if (isset($_REQUEST['sid'])) $sid=(int)$_REQUEST['sid']; else die("Numéro de questionnaire manquant");
if (isset($_REQUEST['cl'])) $cl=$_REQUEST['cl']; else $cl = 'fr' ;
if (!(in_array($cl, array_values($langs)))) { $cl = 'fr' ; }
if (!$formation->validUserHypo()) { header('location:connexion.php?sid='.$sid.'&id='.$id); }
if (!$formation->checkActiveSurvey ($surveyid)) { $formation->safe_die ("Problème sur l'identifiant du questionnaire") ; }
require_once($oldversion.'/classes/core/startup.php');
require_once($oldversion.'/config-defaults.php');
require_once($oldversion.'/common.php');
$printoutput = "" ;
$aFullResponseTable = @aGetFullResponseTable ($surveyid, $id, $cl);
//Get the fieldmap @TODO: do we need to filter out some fields?
unset ($aFullResponseTable['id']);
unset ($aFullResponseTable['token']);
unset ($aFullResponseTable['lastpage']);
unset ($aFullResponseTable['startlanguage']);
unset ($aFullResponseTable['datestamp']);
unset ($aFullResponseTable['startdate']);
$printoutput .= "<table class='printouttable' >\n";
$oldgid = 0;
$oldqid = 0;
foreach ($aFullResponseTable as $sFieldname=>$fname)
{
if (substr($sFieldname,0,4)=='gid_')
{
$printoutput .= "\t<tr class='printanswersgroup'><td colspan='2'>{$fname[0]}</td></tr>\n";
}
elseif (substr($sFieldname,0,4)=='qid_')
{
$printoutput .= "\t<tr class='printanswersquestionhead'><td colspan='2'>{$fname[0]}</td></tr>\n";
}
else
{
// AD : suppression des valeurs des réponses (mises entre crochets après le libellé de la réponse)
if ($fname[2] != '')
{
$fname[2] = preg_replace('!\[.*?\]$!', '', $fname[2]);
// AD : il manque un espace avant le libellé de la sous-réponse
$fname[1] = str_replace ('[', ' [', $fname[1]) ;
$printoutput .= "\t<tr class='printanswersquestion'><td class='printanswersanswerlabel'>{$fname[0]} {$fname[1]}</td><td class='printanswersanswertext'>{$fname[2]}</td></tr>";
}
}
}
$printoutput .= "</table>\n";
//sendcacheheaders();
//doHeader();