⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 surveymanager.lib.php

📁 完美的在线教育系统
💻 PHP
📖 第 1 页 / 共 5 页
字号:
<?php // $Id: usermanager.lib.php,v 1.9.2.3 2005/10/28 14:31:45 bmol Exp $
/*
=====================================================Gh9Xp5m=========================
	Dokeos - elearning and course management software

	Copyright (c) 2004 Dokeos S.A.
	Copyright (c) 2003 Ghent University (UGent)
	Copyright (c) 2001 Universite catholique de Louvain (UCL)
	Copyright (c) various contributors

	For a full list of contributors, see "credits.txt".
	The full license can be read in "license.txt".

	This program is free software; you can redistribute it and/or
	modify it under the terms of the GNU General Public License
	as published by the Free Software Foundation; either version 2
	of the License, or (at your option) any later version.

	See the GNU General Public License for more details.

	Contact: Dokeos, 181 rue Royale, B-1000 Brussels, Belgium, info@dokeos.com
==============================================================================
*/
/**
==============================================================================
*	This library provides functions for user management.
*	Include/require it in your code to use its functionality.
*
*	@author Bart Mollet, main author
*	@package dokeos.library
==============================================================================
*/
class SurveyManager
{
	/**
	  * Creates a new survey for the platform
	  */
	function select_survey_list($seleced_surveyid='', $extra_script='')
	{
		$survey_table = Database :: get_course_table('survey');
		$sql = "SELECT * FROM $survey_table";// WHERE is_shared='1'";
		$sql_result = api_sql_query($sql,__FILE__,__LINE__);
		if(mysql_num_rows($sql_result)>0)
		{
			$str_survey_list = "";
			$str_survey_list .= "<select name=\"exiztingsurvey\" $extra_script>\n";
			$str_survey_list .= "<option value=\"\">--Select Survey--</option>";

			while($result=mysql_fetch_array($sql_result))
			{
			 $selected = ($seleced_surveyid==$result[survey_id])?"selected":"";
			 $str_survey_list .= "\n<option value=\"".$result[survey_id]."\" ".$selected.">".$result[title]."</option>";
			}

			$str_survey_list .= "</select>";
			return $str_survey_list;

		}
		else
		{
			return false;
		}

	}

	/*function getsurveyid($existing)
	{

		$survey_table = Database :: get_course_table(TABLE_MAIN_SURVEY);
		$sql = "SELECT survey_id FROM $survey_table WHERE title='$existing'" ;
		$result = api_sql_query($sql,__FILE__,__LINE__);
		$i=0;
		$survey_id=mysql_result($result,$i,'survey_id');
		echo "in getsurveyid".$survey_id;
		return(survey_id);
	}
*/


	function create_group($survey_id,$group_title,$introduction,$table_group)
	{
		$sql_query = "SELECT * FROM $table_group where groupname='".$group_title."' AND survey_id=".intval($survey_id);
		$res = api_sql_query($sql_query, __FILE__, __LINE__);
		if(mysql_num_rows($res))
		{
			return false;

		}
		else
		 {

			$sql = 'SELECT MAX(sortby) FROM '.$table_group.' WHERE survey_id="'.$survey_id.'"';
			$rs = api_sql_query($sql, __FILE__, __LINE__);
			list($sortby) = mysql_fetch_array($rs);
			$sortby++;
			$sql="INSERT INTO $table_group(group_id,survey_id,groupname,introduction, sortby) values('','$survey_id','$group_title','$introduction','$sortby')";
			$result=api_sql_query($sql);
			return mysql_insert_id();
		 }

	}


	function get_survey_author($authorid)
	{
			$user_table = Database :: get_main_table(TABLE_MAIN_USER);
		    $sql_query = "SELECT * FROM $user_table where user_id='$authorid'";
			$res = api_sql_query($sql_query, __FILE__, __LINE__);
			$firstname=@mysql_result($res,0,'firstname');
			return $firstname;
	}


	function get_author($db_name,$survey_id)
	{
	    //$table_survey = Database :: get_course_table('survey');
		$sql = "SELECT author FROM $db_name.survey WHERE survey_id='$survey_id'";
		$res = api_sql_query($sql, __FILE__, __LINE__);
		$author=@mysql_result($res,0,'author');
		return $author;
	}

	function get_surveyid($db_name,$group_id)
	{
	    //$group_table = Database :: get_course_table('survey_group');
		$sql = "SELECT survey_id FROM $db_name.survey_group WHERE group_id='$group_id'";
		$res = api_sql_query($sql, __FILE__, __LINE__);
		$surveyid=@mysql_result($res,0,'survey_id');
		return $surveyid;
	}



	/*function get_survey_code($table_survey,$survey_code)
	{
			$sql="SELECT code FROM $table_survey where code='$survey_code'";
			$result=api_sql_query($sql);
			$code=mysql_result($result,0,'code');
			return($code);
	}*/

	function get_groupname($db_name,$gid)
	{
		//$grouptable = Database :: get_course_table('survey_group');
		$sql = "SELECT * FROM $db_name.survey_group WHERE group_id='$gid'";
		$res=api_sql_query($sql);
		$code=@mysql_result($res,0,'groupname');
		return($code);
	}


	function insert_into_group($survey_id,$group_title,$introduction,$tb)
	{
		$sql="INSERT INTO $tb(group_id,survey_id,group_title,introduction) values('','$survey_id','$group_title','$introduction')";
		$result=api_sql_query($sql);
		return mysql_insert_id();
	}

	function get_survey_code($table_survey,$survey_code)
	{
			$sql="SELECT code FROM $table_survey where code='$survey_code'";
			//echo $sql;
			//exit;
			$result=api_sql_query($sql);
			$code=@mysql_result($result,0,'code');
			//echo $code;exit;
			return($code);
	}

	function get_survey_list()
	{
		$survey_table = Database :: get_course_table('survey');
		$sql_query = "SELECT survey_id,title FROM $survey_table where title!='' ";
		$sql_result = api_sql_query($sql_query,__FILE__,__LINE__);
		echo "<select name=\"author\">";
		echo "<option value=\"\"><--Select Survey--></optional>";
		while ($result =@mysql_fetch_array($sql_result))
		{
			echo "\n<option value=\"".$result[survey_id]."\">".$result[title]."</option>";
		}
		echo "</select>";
	}

	function create_survey($surveycode,$surveytitle, $surveysubtitle, $author, $survey_language, $availablefrom, $availabletill,$isshare, $surveytemplate, $surveyintroduction, $surveythanks, $table_survey, $table_group)
		{
			//$table_survey = Database :: get_course_table('survey');
			$sql = "INSERT INTO $table_survey (code,title, subtitle, author,lang,avail_from,avail_till, is_shared,template,intro,surveythanks,creation_date) values('$surveycode','$surveytitle','$surveysubtitle','$author','$survey_language','$availablefrom','$availabletill','$isshare','$surveytemplate','$surveyintroduction','$surveythanks',curdate())";
			$result = api_sql_query($sql, __FILE__, __LINE__);
			//$result = api_sql_query($sql);
			$survey_id = mysql_insert_id();
			$sql2 = "INSERT INTO $table_group(group_id,survey_id,groupname,introduction) values('','$survey_id','No Group','This is your Default Group')";
			$result = api_sql_query($sql2, __FILE__, __LINE__);
			return $survey_id;
		}

	function create_survey_in_another_language($id, $lang){

		global $_course;

		$original_survey = SurveyManager::get_all_datas($id);

		// copy the survey itself
		$sql = 'INSERT INTO '.$_course['dbName'].'.survey SET
					code = "'.$original_survey->code.'",
					title = "'.addslashes($original_survey->title).'",
					subtitle = "'.addslashes($original_survey->subtitle).'",
					author = "'.$original_survey->author.'",
					lang = "'.$lang.'",
					avail_from = "'.$original_survey->avail_from.'",
					avail_till = "'.$original_survey->avail_till.'",
					is_shared = "'.$original_survey->is_shared.'",
					template = "'.$original_survey->template.'",
					intro = "'.addslashes($original_survey->intro).'",
					surveythanks = "'.addslashes($original_survey->surveythanks).'",
					creation_date = "NOW()"';

		$result = api_sql_query($sql, __FILE__, __LINE__);
		$new_survey_id = mysql_insert_id();

		// copy the groups
		$groups = SurveyManager::listGroups($id);
		foreach($groups as $group)
		{
			SurveyManager::import_group($new_survey_id, $group['group_id'], $_course['dbName'], $_course['dbName']);
		}

	}

	function create_survey_attach($surveycode,$surveytitle, $surveysubtitle, $author, $survey_language, $availablefrom, $availabletill,$isshare, $surveytemplate, $surveyintroduction, $surveythanks, $table_survey, $table_group)
	{
			//$table_survey = Database :: get_course_table('survey');
			$sql = "INSERT INTO $table_survey (code,title, subtitle, author,lang,avail_from,avail_till, is_shared,template,intro,surveythanks,creation_date) values('$surveycode','$surveytitle','$surveysubtitle','$author','$survey_language','$availablefrom','$availabletill','$isshare','$surveytemplate','$surveyintroduction','$surveythanks',curdate())";
			$result = api_sql_query($sql, __FILE__, __LINE__);
			$survey_id = mysql_insert_id();
			return $survey_id;
	}

	function update_survey($surveyid,$surveycode,$surveytitle, $surveysubtitle, $author, $survey_language, $availablefrom, $availabletill,$isshare, $surveytemplate, $surveyintroduction, $surveythanks, $cidReq,$table_course)
	{
          $sql_course = "SELECT * FROM $table_course WHERE code = '$cidReq'";
          $res_course = api_sql_query($sql_course,__FILE__,__LINE__);
          $obj_course=@mysql_fetch_object($res_course);
          $curr_dbname = $obj_course->db_name ;
		  $sql = "UPDATE $curr_dbname.survey SET code='$surveycode', title='$surveytitle', subtitle='$surveysubtitle', lang='$survey_language',   avail_from='$availablefrom', avail_till='$availabletill', is_shared='$isshare', template='$surveytemplate', intro='$surveyintroduction',surveythanks='$surveythanks' WHERE survey_id='$surveyid'";
		  api_sql_query($sql, __FILE__, __LINE__);
		  return $curr_dbname;
	}

	/*
	function create_question($gid,$type,$caption,$answers,$open_ans,$answerT,$answerD,$rating,$table_question)
	{

		for($i=0;$i<10;$i++)
		{
		   $x.= "'".$answers[$i]."',";
		}
		//echo "Hello".$x;

		for($j=0;$j<10;$j++)
		{
			if($j==9)
			{
				$y.= "'".$rating[$j]."'";
			}
			else
			{
				$y.= "'".$rating[$j]."',";
			}
		}

		$anst = implode(", " ,$answerT);
		$ansd = implode(", " ,$answerD);

		$table_question = Database :: get_course_table(TABLE_MAIN_SURVEYQUESTION);
		$sql = "INSERT INTO  $table_question (gid,type,caption,ans1,ans2,ans3,ans4,ans5,ans6,ans7,ans8,ans9,ans10,open_ans,anst,ansd,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10) values('$gid','$type','$caption',$x'$open_ans','$anst','$ansd',$y)";
		$result = api_sql_query($sql);
		return mysql_insert_id();
	}

	function get_question($questionid)
	{
		$table_question = Database :: get_course_table(TABLE_MAIN_SURVEYQUESTION);
	  	$sql = "SELECT * FROM $table_question where qid='$questionid'";
		$res=api_sql_query($sql);
		$code=@mysql_result($res,0,'caption');
		return($code);
	}
	*/

	function create_question($gid,$surveyid,$qtype,$caption,$alignment,$answers,$open_ans,$answerT,$answerD,$rating,$curr_dbname)
	{
    	$sql_sort = "SELECT max(sortby) AS sortby FROM $curr_dbname.questions ";
		$res_sort=api_sql_query($sql_sort);
		$rs=mysql_fetch_object($res_sort);
		$sortby=$rs->sortby;
		if(empty($sortby))
		{
			$sortby=1;
		}
		else
		{
			$sortby=$sortby+1;
		}
		for($i=0;$i<10;$i++)
		{
		   $x.= "'".$answers[$i]."',";
		}
		for($j=0;$j<10;$j++)
		{
			if($j==9)
			{
				$y.= "'".$rating[$j]."'";
			}
			else
			{
				$y.= "'".$rating[$j]."',";
			}
		}
		/*if($qtype=='Multiple Choice (multiple answer)')
		{
			$anst = implode(", " ,$answerT);
			$ansd = implode(", " ,$answerD);
		}
		else
		{*/
			$anst = $answerT;
			$ansd = $answerD;
		//}
			$sql = "INSERT INTO $curr_dbname.questions (gid,survey_id,qtype,caption,alignment,sortby,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,at,ad,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10) values('$gid','$surveyid','$qtype','$caption','$alignment','$sortby',$x'$anst','$ansd',$y)";
			$result = api_sql_query($sql);
			return mysql_insert_id();

		}


	function update_question($qid,$qtype,$caption,$alignment,$answers,$open_ans,$curr_dbname)
	{
      	for($i=0;$i<10;$i++)
		{
		   $k=$i+1;
		   $a.$k= $answers[$i];
		}
		$anst = $answerT;
		$ansd = $answerD;
		$sql = "UPDATE $curr_dbname.questions SET qtype='$qtype',caption='$caption',alignment='$alignment',a1='$answers[0]',a2='$answers[1]',a3='$answers[2]',a4='$answers[3]',a5='$answers[4]',a6='$answers[5]',a7='$answers[6]',a8='$answers[7]',a9='$answers[8]',a10='$answers[9]' WHERE qid='$qid'";
		$result = api_sql_query($sql);
		return mysql_insert_id();
	}


	 function get_question_type($questionid)
	 {
	  $table_question = Database :: get_course_table('questions');
	  $sql = "SELECT * FROM $table_question where qid='$questionid'";
			$res=api_sql_query($sql);
			$code=@mysql_result($res,0,'type');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -