sondage

Bonjour,

je voudrais intégrer un sondage dans un blogue pluxml (à l'intérieur d'un article de préférence). L'un d'entre vous l'a-t-il déjà fait ? Si oui, comment ? Quel est l'outil le plus facile à utiliser pour une intégration réussie (je ne suis pas un expert de la programmation, loin de là !!) ?

Réponses

  • Je résuscite ce message, car je me demandais si quelqu'un avait déjà développé une solution de sondage sans base de donné pour pluxml ? Si c'est possible aussi.

    Merci
  • je ne sais pas mais en attendant ce genre de service se trouve sur la toile.
    Des scripts que t'insères dans ta page ...
  • Bonsoir,

    Oui, c'est possible.
    J'utilise depuis quelque temps une solution appelée AskPeople, qui bien qu'elle n'évolue plus depuis sa version 2.2, est très stable et très fonctionnelle.
    Elle n'a pas besoin de base de données.
    Il suffit de l'installer quelque par sur sur site pour accéder à l'administration et créer son questionnaire.
    Je prends ensuite la page pour la "mettre" dans mon site (PluXML ou autre d'ailleurs) simplement avec une balise <iframe>

    Le site source est là : http://www.askpeople.co.uk/index.php
    Il y a un accès démo vers l'administration. Sinon, on peut voir une démo côté utilisateur là par exemple : http://www.askpeople.co.uk/demo/survey.php?sid=B54EB9

    Comme dit, j'en suis vraiment très content.
    A+
  • Merci beaucoup zorn !
  • Bonsoir,

    J'hébergeais askpeople sur mon Syno depuis quelques temps. Suite à un plantage, j'ai du reconfigurer mon Syno et installer la dernière version du système d'exploitation (ave le php et tout le reste).
    Depuis, je rencontre un problème lors de l'édition des questionnaires : l'appel aux templates ne se fait plus correctement. Il doit y avoir une instruction PHP obsolète, mais comme j'y comprends rien, et que le soft n'est plus supporté, je suis un peu dans la m...

    Ce que je peux dire, c'est que ça se passe là : qeditor.php?action=EditQuestionnaire
    Si ça peut aider, voilà le bout de code
    	  case "EditQuestionnaire" : // edit form
    		
    		$_SESSION['admin_sid'] = !isset($_SESSION['admin_sid']) ? $_REQUEST['sid'] : $_SESSION['admin_sid'];
    		
    		$qid = "surveys/quest_" . $_SESSION['admin_sid'] . ".xml";
    		$loaded = loadQuest2($qid);
    
    		$lastq = end($loaded['questions']); // grab last question
    		$lastqid = $lastq['questionid'];
    
    		$onloadfunc = "showq('q".$lastqid."');"; // JS function to run on page load
    		include('includes/header.php');
    
    		$templatemenu = makeTemplateMenu("templates/",$loaded['meta']['template'],"questionnaire[meta][template]","TRUE"); // only include PHP files
    
            $directory = (substr(dirname($_SERVER['PHP_SELF']),-1) == "/") ? dirname($_SERVER['PHP_SELF']) : dirname($_SERVER['PHP_SELF']) . "/";
    		$surveylink = $protocol . $_SERVER['HTTP_HOST'] . $directory . "survey.php?sid=".$_SESSION['admin_sid'];
    
    		$_SESSION['statusmsg'] = null; // reset the status var
    	
    		// build menu of questions
    		for ($a=1;$a<=count($loaded['questions']);$a++) {
    			$qmenu .= "<li class='qnode {$loaded['questions'][$a]['type']}' id=\"q{$loaded['questions'][$a][questionid]}_menu\"><a onclick=\"showq('q{$loaded['questions'][$a][questionid]}');return false;\" href='#'>".$loaded['questions'][$a]['questionid'].". (".$loaded['questions'][$a]['type'].")</a></li>\n";
    		
    			// build a menu of questions for moving
    			//$movemenu .= "<option value='{$loaded['questions'][$a][questionid]}'>Q{$loaded['questions'][$a][questionid]}</option>\n";
    		}
    		
    		if (count($loaded['questions'])>20) { // a longish questionnaire, so make the left menu a scrolling list
    			$menuclass = "scrolling";
    		} else {
    			$menuclass = "notscrolling";
    		}
    		
    		$outputform .= "
    			<p id='surveylink'><img src=\"images/icons/web_16x16.gif\" width=\"16\" height=\"16\" class='icon' alt=\"Link to survey\" border=\"0\" />The link to this survey is: <a href='{$surveylink}'>{$surveylink}</a></p>
    			
    			<form action=\"qeditor.php\" method=\"post\" name=\"questionform\">
    			
    			<div id=\"questionlist\" class=\"{$menuclass}\">
    				<h3 style='margin-left: 15px;'>Choose question:</h3>
    				<ul>
    					<li class='qnode'><strong><a onclick=\"showq('details');return false;\" href='#'>Questionnaire intro</a></strong></li>
    					{$qmenu}
    				</ul>
    			</div>
    			
    			
    			<div id=\"questioneditform\">
    					<div id=\"titletemplate\">
    						<p>Title: <input type=\"text\" size=\"30\" name=\"questionnaire[meta][title]\" value=\"{$loaded['meta']['title']}\" />
    						&nbsp; Template:&nbsp;<span>$templatemenu</span></p>
    					</div>
    
    					<div id=\"details\" class=\"questionform qbox\">
    						<h2>Questionnaire details</h2>
    						<p>Creator: <input type=\"text\" size=\"20\" style='position:absolute;left:40%;margin-top:-5px;' name=\"questionnaire[meta][creator]\" value=\"{$loaded['meta']['creator']}\" /></p>
    						<p>Date created: <input type=\"text\" size=\"20\" style='position:absolute;left:40%;margin-top:-5px;' name=\"questionnaire[meta][date]\" value=\"{$loaded['meta']['date']}\" /></p>
    						<p>Introduction: (shown to respondents at the beginning of the questionnaire)</p>
    						  <p style='width:99%; margin-top: -10px'><textarea class=\"textfield qtextbox\" cols=\"80\" rows=\"4\" name=\"questionnaire[meta][introduction]\">{$loaded['meta']['introduction']}</textarea></p>
    						</p>
    						<input type=\"hidden\" name=\"questionnaire[meta][id]\" value=\"{$loaded['meta']['id']}\" />
    						<div style=\"clear:both;\">
    							<p style=\"float:left; width: 49%;text-align:left;margin-top:5px;\">					
    								  <input type=\"submit\" value=\"Save changes\" />
    							</p>
    						</div>
    						</div>
    		";
    
    		for ($a=1;$a<=count($loaded['questions']);$a++) {
    
    			if (strlen($loaded['questions'][$a])>0) {
    
    				if ($loaded['questions'][$a][type] == "single" || $loaded['questions'][$a][type] == "dropdown" || $loaded['questions'][$a][type] == "multi") {
    					$qoptions = @implode("\r",$loaded['questions'][$a][options]);
    					$qscale = @implode("\r",$loaded['questions'][$a][scale]);
    				} else {
    					$qoptions = @implode('',$loaded['questions'][$a][options]);
    					$qscale = NULL;
    				}
    
    				// build a menu of question types, highlighting the current setting for this question
    				$qtype = $loaded['questions'][$a][type];
    				$qtypearray = array("single","dropdown","multi","bigbox","smallbox","pagebreak","info");
    				$qtypemenu = "<select name=\"questionnaire[questions][$a][type]\">\n";
    				foreach($qtypearray as $v) {
    					$qtypemenu .= ($v == $qtype) ? "<option value=\"$v\" selected=\"selected\">$v</option>\n" : "<option value=\"$v\">$v</option>\n";
    				}
    				$qtypemenu .= "</select> <a onclick=\"toggleVisibility('notes');\" href=\"#notes\"><img src=\"images/icons/help_16x16.gif\" width=\"16\" height=\"16\" class='icon' alt=\"Help\" border=\"0\" /></a>\n";
    
    				// build a menu of question validation options, highlighting the current setting for this question
    				$qvalidation = $loaded['questions'][$a]['validation'];
    				$qvalidationmenu = "This question is: <select name=\"questionnaire[questions][$a][validation]\">\n";
    				foreach($qvalidationarray as $v) {
    					$qvalidationmenu .= ($v == $qvalidation) ? "<option value=\"$v\" selected=\"selected\">$v</option>\n" : "<option value=\"$v\">$v</option>\n";
    				}	
    				$qvalidationmenu .= "</select> <a onclick=\"toggleVisibility('notes');\" href=\"#notes\"><img src=\"images/icons/help_16x16.gif\" width=\"16\" height=\"16\" class='icon' alt=\"Help\" border=\"0\" /></a>\n";
    
    				$movemenu = NULL; // reset
    				for ($b=1;$b<=count($loaded['questions']);$b++) {
    					// build a menu of questions for moving
    					if ($a != $b) {
    						$movemenu .= "<option value='{$loaded['questions'][$b][questionid]}'>Q{$loaded['questions'][$b][questionid]}</option>\n";				
    					}
    				}
    
    				$outputform .= "
    					<div id=\"q{$loaded['questions'][$a][questionid]}\" class=\"questionform\">
    					  <div class='qbox'>
    						<h2>Question {$loaded['questions'][$a][questionid]}</h2>\n
    						<p><input type=\"hidden\" size=\"5\" name=\"questionnaire[questions][$a][questionid]\" value=\"{$loaded['questions'][$a][questionid]}\" />Question type: $qtypemenu &nbsp; $qvalidationmenu</p>
    						<p>Question text:</p>
    						  <p style='width:99%; margin-top: -10px;'>
    						  <textarea class=\"textfield qtextbox\" name=\"questionnaire[questions][$a][questiontext]\" cols=\"80\" rows=\"5\">{$loaded['questions'][$a][questiontext]}</textarea>
    						  </p>
    						
    						<div class='edit_responses'>
    						 <p>Responses:<br /><em>Single/Dropdown/Multi:  each option on a new line</em><br /><textarea class=\"textfield\" name=\"questionnaire[questions][$a][options]\" cols=\"50\" rows=\"8\">$qoptions</textarea></p>
    						</div>
    						<div class='edit_scale'>
    						 <p>Scale:<br /><em>Single/Multi: Turns question into grid</em><br /><textarea class=\"textfield\" name=\"questionnaire[questions][$a][scale]\" cols=\"50\" rows=\"8\">$qscale</textarea></p>
    						</div>
    						<div style='clear:both;'></div>
    					  </div>
    					  <br />
    					  <div class='qformbuttoms' style=\"clear: both; position: relative; bottom: 10px; padding: 2px 5px 7px 5px;\">
    							<div style=\"float:right; width: 77%;text-align:right; margin-top:5px;\">
    								  
    									 <input type=\"submit\" name=\"insertq\" value=\"Insert new q after Q{$loaded['questions'][$a][questionid]}\" />
    							 		 &nbsp;<label>Move to after: <select name=\"moveq[{$loaded['questions'][$a][questionid]}]\" onchange=\"this.form.submit();\">
    								      <option value='' selected='selected'>--</option>
    								      {$movemenu}
    								    </select></label>
    								    &nbsp; <input type=\"submit\" name=\"deleteq\" onclick=\"return confirmSubmit('Are you sure you want to permanently delete this question?');\" value=\"Delete Q{$loaded['questions'][$a][questionid]}\" />
    							</div>
    							<div style=\"float:left; width: 20%; margin-top:5px;\">					
    								  <input type=\"submit\" value=\"Save changes\" />
    							</div>
    						 <div style='clear:both;'></div>
    					  </div>
    					</div>
    				";
    			}
    		}
    		
    		$outputform .= "
    			<input type=\"hidden\" name=\"action\" value=\"SaveQuestionnaire\" />
    			<input type=\"hidden\" name=\"sid\" value=\"{$loaded['meta']['id']}\" />
    			</form>
    			<div style='clear:both;'></div>
    			{$notesbox}
    			
    			</div>
    		";
    
    mais attention il y en a pour 150 lignes... même si je pense que ça doit se passer assez au début puisque l'appel au template par exemple ici
    $templatemenu = makeTemplateMenu("templates/",$loaded['meta']['template'],"questionnaire[meta][template]","TRUE"); // only include PHP files
    
    Merci pour toute idée ou coup de main
  • JoséJosé Member
    juillet 2012 modifié
    Bonjour,

    la démonstration a l'air d'être sympa et facile d'utilisation

    mais je n'arrive pas à installer l'application, en local;
    j'ai les messages suivants:
    Notice: Use of undefined constant install - assumed 'install' in C:\wamp\www\AskPeople\install.php on line 96
    Notice: Use of undefined constant pwd1 - assumed 'pwd1' in C:\wamp\www\AskPeople\install.php on line 100

    etc ...

    comme s'il ne prenait pas en compte les données utilisateur, mot de passe etc...

    quelqu'un peut-il m'aider

    José
Connectez-vous ou Inscrivez-vous pour répondre.