Разработка электронного модуля дистанционного обучения

Разработка и применение компьютерных технологий в обучении. Обзор средств разработки обучающих программ и программ проверки знаний. Основы создания компьютерных тестов. Пакет программ SunRav. Средства реализации модуля. Структура электронного учебника.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 13.05.2009
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Медицинскую помощь на объекте организовать силами санитарной дружины и санитарных постов. В срок 3е суток провести иммунизацию рабочих, служащих и членов их семей от особо опасных инфекций. Иммунизацию провести силами личного состава санитарной дружины под руководством заведующей здравпунктом хлебокомбината.

Санитарную обработку проводить в санпропускниках (душевых) хлебозаводов № 1 и 2 (если они не получили разрушений). При разрушении зданий объекта санобработку и обеззараживание одежды производить в местах, указанных службой ПР и ПХЗ города.

Заключение

В данном дипломном проекте рассматривалась разработка электронного модуля дистанционного обучения предназначенного для размещения в сети Интернет на сайте преподавателя или учебного центра НИ РХТУ.

Электронный модуль дистанционного обучения создавался с целью повышения эффективности процесса обучения студентов заочного факультета.

Модуль разработан на тему «Схемотехника» и содержит электронный учебник - где рассмотрены основные понятия и методы моделирования логических устройств, и систему тестирования - позволяющую в интерактивном режиме проверять уровень знаний у обучающегося. В модуле предусмотрена обратная связь и система администрирования.

Данные о результатах тестирования обучающихся хранятся централизованно и всегда доступны для просмотра.

Web-интерфейс модуля достаточно удобен для быстрого освоения пользователями. Доступ к модулю осуществляется посредством стандартного web-браузера.

Положительной стороной данного модуля является постоянная система навигации, обязательность авторизации и регистрации, наглядность информации о результатах тестирования. Однако данный модуль можно улучшить, если предусмотреть дополнительные средства общения, такие как чат и форум.

Дистанционная форма обучения предполагает, что слушатель будет обучаться в удобном месте, в удобное время, в удобном темпе времени, используя имеющиеся компьютерные средства для общения с преподавателем центра, обмениваясь текстовыми сообщениями.

Тем не менее, поставленные цели и задачи выполнены, и разработанный модуль вполне можно применять.

Так как структура дистанционных учебных курсов подразумевает модульный принцип, то разработанный модуль может быть включен в состав курса по электронике или использоваться отдельно.

Список используемой литературы

Нормативные документы

1 СТП НИ(ф) РХТУ 201.01 - 2004 Стандарт предприятия. Проекты(работы) дипломные и курсовые: НИ РХТУ им Д. И. Менделеева, подготовлен к печати на кафедрах МСК и АПП

2 НПБ 105-03. Нормы пожарной безопасности. Определение категорий помещений, зданий и наружных установок по взрывопожарной и пожарной опасности.

3 СанПиН 2.2.2/2.4.1340-03. Гигиенические требования к персональным электронно-вычислительным машинам и организации работы.

4 ГОСТ 27818-88. Допустимые уровни шума на рабочих местах и методы определения.

Книга одного - двух авторов

1 Агапонов С.В. Средства дистанционного обучения. Методика, технологии, инструментарий: СПб.: БХВ-Петербург, 2003.-336 с.

2 Котеров Д.В. Самоучитель РНР4. - СПб.: БХВ-Петербург, 2004.-576с.

3 Карпова Т.С. Базы данных: модели, разработка, реализация.- СПб.: Питер, 2001. - 304с.

4 Полат Е.С. Моисеева М.В. Дистанционное обучение.- М,: Владос - 1998. - 192 с.

5 Андреев А.А. Введение в дистанционное обучение. ч.II - М.: МЭСИ, 1997 - 50 с.

Труды институтов

1 .Дистанционное обучение и новые технологии в образовании - М.: Изд. Моск. гос. социальный университет. 1995 г. с. 54.

2 Разработка средств дистанционного обучения, компьютерных сетей и баз данных: Отчет о НИР // НИИ Микроэлектроники и информационной измерительной техники, Рук. Моисеев С.Х., 1995 г.

Статьи из журналов

1 Мержанова М.И. Уроки Web-мастерства. Урок 6. Создаем свой первый сайт. // Мир ПК - 2004.- № 6.-С.76-83.

2 Кухарчик А.М. Дешево и сердито. Краткий рассказ о PHP-Nuke и преимуществах этой системы. //Hard&Soft - 2005.- № 1. - С.116-118.

3 Кухарчик А.М. По ту сторону сайта. Первые шаги в мир PHP // Hard&Soft - 2004.- № 7. - С.112-117.

4 Кухарчик А.М. PHP в действии.// Hard&Soft - 2004.- № 9. - С.114-116.

5 Поляков А.А. Системы дистанционного обучения // Новые знания - 1996.- № 3. - С. 34-35.

Материалы Интернета

1 Методика применения дистанционных технологий (дистанционного обучения) в образовательных учреждениях высшего профессионального образования Российской Федерации от 01.07.2002 // Министерство образования РФ. Сервер «Дистанционное обучение». Страница «Нормативно-правовая база». http://dp.informika.ru/do/npb/index.asp?id=75&a=VD

2 Разработка корпоративных систем ДО //Центр дистанционного образования «Эйдос» // Страница «Электронный магазин. Информационные услуги. Разработка корпоративных систем ДО»// http://www.eidos.ru/shop/info/corp.htm

3 Концепция создания и развития единой системы дистанционного образования в России. // Открытое образование, №2, 1997. // http://www.mesi.ru/joe/»

4 Электронные системы //«Система для разработки компьютерных тестов» // Страница «Статьи» // «http://www.bytic.ru/cue99M/cwf7pvpwke.html».

5 SunRav TestOfficePro // Сервер «SunRav Software». Страница «Документация»// «http://www.sunrav.ru/srtop/index.shtml».

6 OPOKC // Сервер «ОРОКС». Страница «software»// «http://dl.nw.ru/software/review/».

7 Virtual-U // Сервер «DL». Страница «Дистанционное обучение»// «http://dl.nw.ru/software/des/part11/».

8 Lotus LearningSpace // Сервер «LearningSpace». Страница «Document» // «http://www.lotus.ru/sa/part1/».

9 Прометей // Сервер «Дистанционное образование». Страница «СДО "Прометей", версия 4.x»// «http://www.prometeus.ru/products/sdo/new.asp»

10 Компьютерная и техническая документация // Сервер «eManual.ru» // «http://www.emanual.ru»

11 Дистанционное обучение // Сервер «Дистанционное обучение» // «http://dl.nw.ru»

Приложение В

Листинг главного скрипта index.php

181

<?

session_start();

if (file_exists("connect.php")) require('connect.php');

else exit('Can not connect to the database (file <B>connect.php</B> not found)!');

if ($_POST["section_id"]) $section_id =$_POST["section_id"];

else $section_id=$_GET["section_id"];

if ($_POST["test_id"]) $test_id =$_POST["test_id"];

elseif ($_GET["test_id"]) $test_id=$_GET["test_id"];

else $test_id=$_SESSION["test_id"];

if ($_POST["group_id"]) $group_id =$_POST["group_id"];

else $group_id=$_GET["group_id"];

if ($_POST["user_id"]) $user_id =$_POST["user_id"];

else $user_id=$_GET["user_id"];

$password=$_POST["password"];

if (file_exists("config.php")) include('config.php');

if (file_exists("variable.lng")) include('variable.lng');

if (file_exists("function.php")) include('function.php');

// Печать результатов

if ($_REQUEST["print"])

{

$login=$HTTP_SESSION_VARS['login'];

$password=$HTTP_SESSION_VARS['password'];

$user_id=$HTTP_SESSION_VARS['user_id'];

settype($user_id,"integer");

$query="SELECT user_id,user_password,user_name,ug_grant_id

FROM users

LEFT JOIN user_grants ON ug_user_id=user_id

WHERE user_password='".md5($password)."' AND user_id=$user_id";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

$_SESSION['grant_resultsview']='F';

if (@mysql_num_rows($result) > 0)

{

while ($row=mysql_fetch_array($result))

{ $name=$row["user_name"];

if (($row["ug_grant_id"]==6)||($row["ug_grant_id"]==1)) $_SESSION['grant_resultsview']='T';

}

}

else

{

echo ($BadPasswordText.' <a href="'.$ScriptName.'">'.$TryAgainText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit;

}

if ($_SESSION['grant_resultsview']!=='T')

{

echo ($CanNotViewResultsText.'<BR>

<a href="'.$ScriptName.'?main=1">'.$HomeText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit;

} else

{

$query="select *

from user_results r

left join tests t ON t.test_id=user_result_test_id

WHERE user_result_user_id=$user_id";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

$total=1;

?><br><align="center"><?=$name?><?

while ($row=mysql_fetch_array($result))

{

?>

<table width=100% border="1" class="table">

<tr>

<td class="header"><?=$total.'. '.$TestText?></td>

<td class="header"><?=$TestingDateText?></td>

<td class="header"><?=$Completed?></td>

<td class="header"><?=$Right?></td>

<td class="header"><?=$PercentRight?></td>

</tr>

<tr>

<td calss="text"><?=$row["test_name"]?></td>

<td calss="text"><?=$row["user_result_time_begin"]?></td>

<td calss="text"><?=$row["user_result_completed_questions"]?></td>

<td calss="text"><?=$row["user_result_righ_questions"]?></td>

<td calss="text"><?=round($row["user_result_percent_right"],2)?></td>

<br><br></tr>

<tr class="tableheader">

<td colspan="10"><?=$ResultText?></td>

</tr>

<tr>

<td calss="text" colspan="10"><?=$row["user_result_results"]?></td>

</tr>

</table>

<?

$total++;

}

$total--;

echo ('<br>Total:'.$total.'<br><br>');

echo ('<a href="'.$ScriptName.'?main=1">'.$HomeText.'</a>.');

?>

<script type="text/javascript" language="javascript1.2">

function printPage()

{

document.getElementById('print').style.visibility = 'hidden';

// Do print the page

if (typeof(window.print) != 'undefined') {

window.print();

}

document.getElementById('print').style.visibility = '';

}

</script>

<?php

echo '<br /><br />&nbsp;<input type="button" style="width: 100px; height: 25px;" id="print" value="' . $strPrint . '" onclick="printPage()">' . "\n<br><br>";

unset ($_REQUEST["main"]);

if (file_exists("footer.html")) include "footer.html";

exit;

};

}

if (file_exists("header.php")) include('header.php');

if ($language && file_exists($language.'.lng')) require($language.'.lng');

//Главная страница

if ($_REQUEST["main"])

{ if (file_exists("main.html")) include "main.html";

unset ($_REQUEST["main"]);

if (file_exists("footer.html")) include "footer.html";

exit; }

$login=$HTTP_POST_VARS["login"];

/* Открытие файлов в зависимости от авторизации*/

if ($_REQUEST["auth"]){

if (empty ($_SESSION['login']))

{

if (empty ($_POST['author']))

{

$htm .= $txtTypeLogin.'<br><br>

<p> <form action="'.$_SERVER['PHP_SELF'].'" method="post">

<p>&nbsp;'.$txtLogin.'&nbsp; <input name="login" type="text" value=""></p>

<p>&nbsp;'.$txtPass.' <input name="password" type="password" value=""></p>

<p>&nbsp;<input name="author" type="submit" value="'.$btnLogin.'"></p>

<P class="text">&nbsp;[<a href="'.$ScriptName.'?forget_pass=1">Забыли пароль?</a> | <a href="'.$ScriptName.'?newuser=1">Зарегистрировать нового пользователя?</a> ] </p>

</form></p>';

}

else

{

//Check LOGIN and PASSWORD

$sql = "SELECT user_id,user_login,user_password,ug_grant_id FROM users

LEFT JOIN user_grants ON user_id=ug_user_id

WHERE user_login='".preg_replace("/[^\w_\.\-]/", "", $_POST['login'])."'

AND user_password='".md5($_POST['password'])."'";

$r = mysql_query ($sql) or die (mysql_error());

if (@mysql_num_rows($r) > 0)

{

//Password is right

while ($row=mysql_fetch_array($r))

{

$_SESSION['user_id']=$row["user_id"];

$HTTP_SESSION_VARS['login']=$row["user_login"];

$HTTP_SESSION_VARS['password']=$row["password"];

$_SESSION['login']='T';

if ($row["ug_grant_id"]==1) $_SESSION['grant_admin']='T';

else $_SESSION['grant_admin']='F';

if ($row["ug_grant_id"]==2) $_SESSION['grant_users']='T';

else $_SESSION['grant_users']='F';

if ($row["ug_grant_id"]==3) $_SESSION['grant_tests']='T';

else $_SESSION['grant_tests']='F';

if ($row["ug_grant_id"]==4) $_SESSION['grant_report']='T';

else $_SESSION['grant_report']='F';

if ($row["ug_grant_id"]==5) $_SESSION['grant_testing']='T';

else $_SESSION['grant_testing']='F';

if ($row["ug_grant_id"]==6) $_SESSION['grant_resultsview']='T';

else $_SESSION['grant_resultsview']='F';

}

header("Location:".$_SERVER['PHP_SELF']);

}

else

{

//Wrong LOGIN or/and PASSWORD

sleep (2);

header("Location:".$_SERVER['PHP_SELF']);

}

}

echo $htm;

exit;

}

else

{

$sql = "SELECT user_id,ug_grant_id,grantpage_page FROM users

LEFT JOIN user_grants ON user_id=ug_user_id

LEFT JOIN grant_pages ON grantpage_grant_id=ug_grant_id

WHERE user_id='".$_SESSION['user_id']."'";

$logged=false;

$script_name=basename($_SERVER['PHP_SELF']);

$r = mysql_query ($sql) or die (mysql_error());

while ($row=mysql_fetch_array($r))

{

if ($script_name==$row["grantpage_page"])

$logged=true;

};

if (($logged==true) OR ($_SESSION['grant_admin']=='T'))

{

$_SESSION['login']='T';

}

else

{

echo($HaveNotGrants);

include "footer.html";

exit;

}

}

}

elseif ($HTTP_POST_VARS["author"])

{

if (file_exists("auth.php")) include('auth.php');

$HTTP_SESSION_VARS["password"]=$HTTP_POST_VARS["password"];

$HTTP_SESSION_VARS["login"]=$HTTP_POST_VARS["login"];

$user_name=$row['user_name'];

?><form name="Hello" method="post" action="<?=$ScriptName?>">

<table class="table" width="100%" align="center">

<tr>

<td class="header" align="center" valign="middle">

<b><font face="Arial" size="3" class="content"><?=$HelloText?>&nbsp;&nbsp;<?=$user_name?>

<br><br><p class="text"><?=$GoTo?><br><br><a href="<?=$ScriptName?>?list_lec=1"><font face="Arial" size="3" class="content"><?=$GoToLections?></a><br><br><font face="Arial" size="3" class="content">или<br><br><a href="<?=$ScriptName?>?list_test=1"><font face="Arial" size="3" class="content"><?=$GoToTests?></p></a>

<p>&nbsp;</p></td></tr></table></form> <?

if (file_exists("footer.html")) include "footer.html";

exit;

}

else if ($_REQUEST["list_lec"]||$_REQUEST["list_test"]||$_REQUEST["gloss"]||$_REQUEST["vved"]||$_REQUEST["feedback"])

{ $login=$HTTP_SESSION_VARS['login'];

$password=$HTTP_SESSION_VARS['password'];

$user_id=$HTTP_SESSION_VARS['user_id'];

if (file_exists("auth.php")) include('auth.php');

if ($_REQUEST["list_lec"])

{ $HTTP_SESSION_VARS["test"]=0;

if (file_exists("list_lec.html")) include "list_lec.html";

unset ($_REQUEST["list_lec"]);

if (file_exists("footer.html")) include "footer.html";

exit; }

elseif ($_REQUEST["list_test"])

{ ?>

<form name="form2" method="post" action="<?=$ScriptName?>">

<table class="table" width="100%" align="center">

<tr>

<td class="header"><?=$TestTopicText?></td>

<td >

<select name="section_id">

<?

$query="SELECT * FROM sections ORDER BY section_name";

$result=mysql_query($query) or exit ("Invalid sections query: ".$query);

while ($row=mysql_fetch_array($result))

{

$section_name=$row["section_name"];

$s_id =$row["section_id"];

settype($s_id,"integer");

if ($HTTP_POST_VARS["section_id"]==$s_id)

{

?>

<option value="<?=$s_id?>" selected><?=$section_name?></option>

<?}

else

{

?>

<option value="<?=$s_id?>" ><?=$section_name?></option>

<?

}

}

?>

</select>

<input type="submit" class="button" name="select_section" value="<?=$SelectText?>">

<br><br> </tr>

<tr>

<br><br> <td class="header"><?=$TestText?></td>

<td >

<select name="test_id">

<? if ($HTTP_POST_VARS["section_id"])

{

settype($HTTP_POST_VARS["section_id"],"integer");

$section_id=$HTTP_POST_VARS["section_id"];

$query=

"SELECT test_id,test_name FROM tests WHERE test_section_id=$section_id ORDER BY test_name";

$result=mysql_query($query) or exit ("Invalid tests query ".$query);

while ($row=mysql_fetch_array($result))

{

$test_name=$row["test_name"];

$t_id =$row["test_id"];

settype($test_id,"integer");

?>

<option value="<?=$t_id?>" selected><?=$test_name?></option>

<?

}

}?>

</select>

</td>

</tr>

</table>

<br>

<input type="submit" class="button" name="begin" value="<?=$BeginTest?>">

<p>&nbsp;</p>

<? exit;

if (file_exists("footer.html")) include "footer.html";

exit;

}

elseif ($_REQUEST["gloss"])

{if (file_exists("gloss.html")) include "gloss.html";

unset ($_REQUEST["gloss"]);

if (file_exists("footer.html")) include "footer.html";

exit; }

elseif ($_REQUEST["vved"])

{

if (file_exists("vved.html")) include "vved.html";

unset ($_REQUEST["vved"]);

if (file_exists("footer.html")) include "footer.html";

exit; }

elseif ($_REQUEST["feedback"])

{

if (file_exists("feedback.php")) include "feedback.php";

unset ($_REQUEST["feedback"]);

if (file_exists("footer.php")) include "footer.php";

exit; }

}elseif ($HTTP_POST_VARS["select_section"])

{ $HTTP_SESSION_VARS["test"]=1;

?>

<form name="form2" method="post" action="<?=$ScriptName?>">

<table width="80%" border="0" cellspacing="0" cellpadding="0" align="center">

<tr>

<td width="40%"><?=$TestTopicText?></td>

<td width="66%">

<select name="section_id">

<?

$query="SELECT * FROM sections";

$result=mysql_query($query) or exit (mysql_error()."in query: ".$query);

while ($row=mysql_fetch_array($result))

{

$section_name=$row["section_name"];

$s_id =$row["section_id"];

settype($s_id,"integer");

if ($HTTP_POST_VARS["section_id"]==$s_id)

{

?>

<option value="<?=$s_id?>" selected><?=$section_name?></option>

<?}

else

{

?>

<option value="<?=$s_id?>" ><?=$section_name?></option>

<?

}

}

?>

</select>

<input type="submit" class="button" name="select_section" value="<?=$SelectText?>">

<br> <br></tr>

<tr></tr>

<tr>

<br><br> <td width="40%"><?=$SelectTestText?></td>

<td width="66%">

<select name="test_id">

<?

settype($HTTP_POST_VARS["section_id"],"integer");

$section_id=$HTTP_POST_VARS["section_id"];

$query="SELECT test_id,test_name FROM tests WHERE test_section_id=$section_id";

$result=mysql_query($query) or exit (mysql_error()."in query ".$query);

while ($row=mysql_fetch_array($result))

{

$test_name = $row["test_name"];

$t_id = $row["test_id"];

settype($test_id,"integer");

?>

<option value="<?=$t_id?>" selected><?=$test_name?></option>

<?

}

?>

</select>

</td>

</tr>

</table>

<br>

<input type="submit" class="button" name="begin" value="<?=$BeginTest?>">

<input type="hidden" class="field" name="login" value="<?=$HTTP_SESSION_VARS["login"]?>" maxlength="30">

<input type="hidden" class="field" name="password" value="<?=$HTTP_SESSION_VARS["password"]?>" maxlength="20">

</form>

<?

unset ($_REQUEST["list_test"]);

exit;

} elseif ($HTTP_POST_VARS["sendmail"]){

if ($HTTP_POST_VARS["sender_email"]=='')

{ echo($NoEmail);

echo ('<br><br><a href="'.$ScriptName.'?feedback=1">'.$TryAgainText .'</a>.');

exit;

}

@$att=$_FILES["task"]["tmp_name"];

$emailuser=$HTTP_POST_VARS["sender_email"];

@$attachment = @fread(fopen("@$att", "r"), filesize("@$att"));

$mail = new mime_mail();

$mail->from = $HTTP_POST_VARS["sender_email"];

$mail->headers = "From: $from\r\nX-Mailer: ArkaSender v.1.0\r\n$headers";

$mail->to = $Email;

$mail->subject = "Sxemotexnika";

$mail->body = $HTTP_POST_VARS["message"];

$mail->add_attachment("$attachment", "@$att", "Content-Transfer-Encoding: base64");

$mail->send();

unset ($HTTP_POST_FILES["task"]);

echo $Sends;

echo ('<br><br><a href="'.$ScriptName.'?main=1">'.$HomeText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit;

}

$login=$HTTP_SESSION_VARS['login'];

$password=$HTTP_SESSION_VARS['password'];

$user_id=$HTTP_SESSION_VARS['user_id'];

if ($HTTP_POST_VARS["begin"])

{

if (trim($login)!='')

{

$user_id=$HTTP_SESSION_VARS["user_id"];

$HTTP_POST_VARS["password"]= $HTTP_SESSION_VARS["password"];

settype($user_id,"integer");

$query="SELECT user_id,user_password,user_name,ug_grant_id

FROM users

LEFT JOIN user_grants ON ug_user_id=user_id

WHERE user_password='".md5($HTTP_POST_VARS["password"])."' AND user_id=$user_id";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

$_SESSION['grant_resultsview']='F';

if (@mysql_num_rows($result) > 0)

{

while ($row=mysql_fetch_array($result))

{

if ($row["ug_grant_id"]==5) $_SESSION['grant_testing']='T';

}

if($_SESSION['grant_testing']!=='T')

{

echo ($HaveNotGrants.' <a href="'.$ScriptName.'">'.$TryAgainText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit;

}

}

else

{

echo ($BadPasswordText.' <a href="'.$ScriptName.'">'.$TryAgainText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit;

}

}

else

{

unset($HTTP_POST_VARS["begin"]);

}

}

if ($HTTP_POST_VARS["Back"])

{

$HTTP_SESSION_VARS["curq"]=$HTTP_SESSION_VARS["curq"]-1;

if ($HTTP_SESSION_VARS["right_answer"][$HTTP_SESSION_VARS["curq"]]==TRUE)

$HTTP_SESSION_VARS["rights"]--;

}

else if($_REQUEST["forget_pass"])

{?>

<form name="forget_form" method="post" action="<?=$ScriptName?>">

<?=$MailRequestText?><br><br><br><br>

<input type="text" class="field" name="mail" size="50" maxlength="40">

<input type="submit" class="button" name="forget_submit" value="<?=$SendText?>">

</form>

<?

unset ($_REQUEST["forget_pass"]);

if (file_exists("footer.html")) include "footer.html";

exit;

}

elseif($HTTP_POST_VARS["forget_submit"])

{

$user_mail=$HTTP_POST_VARS["mail"];

$query="SELECT user_name,user_login,user_password FROM users WHERE

user_mail='".$user_mail."'";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

if (mysql_num_rows($result)!==1)

{

echo($EmailNotFoundText);

if (file_exists("footer.html")) include "footer.html";

exit;

}

$row=mysql_fetch_array($result);

$name=$row["user_name"];

$password=$row["user_password"];

$login=$row["user_login"];

$message=$HelloText.",".$name.

$YourLoginText.$login.

$YourPassText.$password;

Mail($user_mail,'Login request',$message,'From: "'.$EMail.'"');

}

else if($_REQUEST["newuser"])

{

?>

<form name="reg_form" method="post" action="<?=$ScriptName?>">

<table width=80% border="0" cellspacing="0" cellpadding="0" align="center">

<tr align="center" class="tableheader"><p><font face="blackArial" class="H1" size="3">Введите пожалуйста свои данные</font></p>

<br><br></tr>

<tr>

<td width=20% ><p>&nbsp;<?=$YourNameText?></p>

</td>

<td width=80%>

<input type="text" class="field" name="reg_name" size="50" maxlength="50">

</td>

</tr>

<td>&nbsp;</td>

<tr>

<td width=20%><p>&nbsp;<?=$YourLoginText?></p></td>

<td width=80%>

<input type="text" class="field" name="reg_login" size="50" maxlength="30">

</td>

</tr>

<td>&nbsp;</td>

<tr>

<td width=20%><p>&nbsp;<?=$YourPassText?></p></td>

<td width=80%>

<input type="password" class="field" name="reg_password" size="50" maxlength="20">

</td>

</tr>

<td>&nbsp;</td>

<tr>

<td width=20%><p>&nbsp;E-mail</p></td>

<td width=80%>

<input type="text" class="field" name="reg_mail" size="50" maxlength="40">

</td>

</tr>

<td>&nbsp;</td>

<tr>

<td width=20%><p>&nbsp;<?=$userRemarks?></p></td>

<td width=80% colspan="2">

<textarea class="field" name="UserInfo" cols="50" rows="2" ></textarea>

</td>

</tr>

<tr>

<td colspan=2>

</td>

</tr>

<p>

<td width=80%>&nbsp;</td>

</tr>

<tr>

<td width=20%>

<input type="reset" class="button" name="clear" value="<?=$ClearText?>">

</td>

<td width=80%>

<input type="submit" class="button" name="register" value="<?=$RegisterText?>">

</td>

</tr>

</table>

</form>

<?

unset ($_REQUEST["newuser"]);

if (file_exists("footer.html")) include "footer.html";

exit;

}

else if($HTTP_POST_VARS["register"])

{

$name =$HTTP_POST_VARS["reg_name"];

$login =$HTTP_POST_VARS["reg_login"];

$password=$HTTP_POST_VARS["reg_password"];

$mail =$HTTP_POST_VARS["reg_mail"];

$UserInfo =$HTTP_POST_VARS["UserInfo"];

if ((trim($mail)=='') || (trim($login)=='') || (trim($password)=='') || (trim($name)=='') )

{

exit ($NotAllFilledText.' <a href="'.$ScriptName.'?newuser=1">'.$TryAgainText.'</a>');

}

$query="SELECT user_name, user_login

FROM users where user_login='".$login."' && user_password='". md5($password)."'";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

if (mysql_num_rows($result)>0)

{

exit ($UserExistsText.

'<a href="'.$ScriptName.'?newuser=1">'.$TryAgainText.'</a>');

}

$query="INSERT INTO users VALUES (

'', 1,'".$name."' , '".md5($password)."','".$UserInfo."','F' ,0, '".

$mail."','".$login."')";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

$query="SELECT user_id FROM users WHERE user_name='$name'&& user_password='".md5($password)."'&& user_login='$login'";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

while ($row = mysql_fetch_array($result))

{ $HTTP_SESSION_VARS["user_id"]=$row['user_id'];

for ($i=4; $i<7; $i++)

{

$query="INSERT INTO user_grants VALUES (

'','".$row["user_id"]."','".$i."')";

$r=mysql_query($query) or exit(mysql_error().' in query: '.$query);

}

}

if (mysql_affected_rows()<0)

{

echo('Can not register a new user '.$name);

if (file_exists("footer.html")) include "footer.html";

exit;

}

else

{

$message=$MailRegistrationTextBegin."\n".

"Login:".$login."\n".

"Password:".$password."\n".

$MailRegistrationTextEnd;

Mail ($mail,"Registration",$message,"From: ".$EMail);

$HTTP_SESSION_VARS["login"]=$login;

$HTTP_SESSION_VARS["password"]=$HTTP_POST_VARS["reg_password"];

if (file_exists("vved.html")) include "vved.html";

if (file_exists("footer.html")) include "footer.html";

exit;

}

}

else if ($HTTP_POST_VARS["select_section_after_testing"])

{?>

<form name="form2" method="post" action="<?=$ScriptName?>">

<table width="80%" border="0" cellspacing="0" cellpadding="0" align="center">

<tr>

<td width="40%"><?=$TestTopicText?></td>

<td width="66%">

<select name="section_id">

<?

$query="SELECT * FROM sections";

$result=mysql_query($query) or exit (mysql_error()."in query: ".$query);

while ($row=mysql_fetch_array($result))

{

$section_name=$row["section_name"];

$s_id =$row["section_id"];

settype($s_id,"integer");

if ($HTTP_POST_VARS["section_id"]==$s_id)

{

?>

<option value="<?=$s_id?>" selected><?=$section_name?></option>

<?}

else

{

?>

<option value="<?=$s_id?>" ><?=$section_name?></option>

<?

}

}

?>

</select>

<input type="submit" class="button" name="select_section" value="<?=$SelectText?>">

</tr>

<tr>

<td width="40%"><?=$SelectTestText?></td>

<td width="66%">

<select name="test_id">

<?

settype($HTTP_POST_VARS["section_id"],"integer");

$section_id=$HTTP_POST_VARS["section_id"];

$query="SELECT test_id,test_name FROM tests WHERE test_section_id=$section_id";

$result=mysql_query($query) or exit (mysql_error()."in query ".$query);

while ($row=mysql_fetch_array($result))

{

$test_name = $row["test_name"];

$t_id = $row["test_id"];

settype($test_id,"integer");

?>

<option value="<?=$t_id?>" selected><?=$test_name?></option>

<?

}

?>

</select>

<input type="submit" class="button" name="begin" value="<?=$BeginTest?>">

<input type="hidden" class="field" name="login" value="<?=$HTTP_SESSION_VARS["login"]?>" maxlength="30">

<input type="hidden" class="field" name="password" value="<?=$HTTP_SESSION_VARS["reg_password"]?>" maxlength="20">

</td>

</tr>

</table>

</form>

<?

exit;

}

else if($_REQUEST["Results"])

{ $login=$HTTP_SESSION_VARS['login'];

$password=$HTTP_SESSION_VARS['password'];

$user_id=$HTTP_SESSION_VARS['user_id'];

settype($user_id,"integer");

$query="SELECT user_id,user_password,user_name,ug_grant_id

FROM users

LEFT JOIN user_grants ON ug_user_id=user_id

WHERE user_password='".md5($password)."' AND user_id=$user_id";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

$_SESSION['grant_resultsview']='F';

if (@mysql_num_rows($result) > 0)

{

while ($row=mysql_fetch_array($result))

{ $name=$row["user_name"];

if (($row["ug_grant_id"]==6)||($row["ug_grant_id"]==1)) $_SESSION['grant_resultsview']='T';

}

}

else

{ echo ($BadPasswordText.' <a href="'.$ScriptName.'">'.$TryAgainText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit; }

if ($_SESSION['grant_resultsview']!=='T')

{ echo ($CanNotViewResultsText.'<BR>

<a href="'.$ScriptName.'?main=1">'.$HomeText.'</a>.');

if (file_exists("footer.html")) include "footer.html";

exit;

} else {

$query="select *

from user_results r

left join tests t ON t.test_id=user_result_test_id

WHERE user_result_user_id=$user_id";

$result=mysql_query($query) or exit(mysql_error().' in query: '.$query);

$total=1;

?><br><align="center"><?=$name?><?

while ($row=mysql_fetch_array($result))

{

?>

<table width=100% border="1" class="table">

<tr>

<td class="header"><?=$total.'. '.$TestText?></td>

<td class="header"><?=$TestingDateText?></td>

<td class="header"><?=$Completed?></td>

<td class="header"><?=$Right?></td>

<td class="header"><?=$PercentRight?></td>

</tr>

<tr>

<td calss="text"><?=$row["test_name"]?></td>

<td calss="text"><?=$row["user_result_time_begin"]?></td>

<td calss="text"><?=$row["user_result_completed_questions"]?></td>

<td calss="text"><?=$row["user_result_righ_questions"]?></td>

<td calss="text"><?=round($row["user_result_percent_right"],2)?></td>

<br><br></tr>

<tr class="tableheader">

<td colspan="10"><?=$ResultText?></td>

</tr>

<tr>

<td calss="text" colspan="10"><?=$row["user_result_results"]?></td>

</tr>

</table>

<?

$total++;

}

$total--;

echo ('<br>Total:'.$total.'<br><br>');

echo ('<a href="'.$ScriptName.'?main=1">'.$HomeText.'</a>.&nbsp;&nbsp;&nbsp;&nbsp;<a href="'.$ScriptName.'?print=1">'.$PrintVer.'</a>');

if (file_exists("footer.html")) include "footer.html";

exit;

};

}

else if ($HTTP_POST_VARS["Next"] || $HTTP_POST_VARS["Pass"])

{

$HTTP_SESSION_VARS["attempts"]++;

$question_id =$HTTP_SESSION_VARS["question_id"];

$test_id =$HTTP_SESSION_VARS["test_id"];

$user_id =$HTTP_SESSION_VARS["user_id"];

$results_id =$HTTP_SESSION_VARS["results_id"];

$attempts =$HTTP_SESSION_VARS["attempts"];

$is_next_when_right=get_is_next_when_right($test_id);

if ($HTTP_SESSION_VARS["notanswered_mode"]==TRUE)

{

$curq=get_next_notanswered($test_id,$HTTP_SESSION_VARS["curq"],$results_id);

$mqc=get_questions_count($test_id);

if ($curq>$mqc)

{ exit; }

}

else

{ $curq=$HTTP_SESSION_VARS["curq"]; }

settype($question_id,"integer");

settype($curq,"integer");

settype($test_id,"integer");

settype($results_id,"integer");

if ($HTTP_POST_VARS["Pass"])

{ $is_answ='F';

unset($HTTP_POST_VARS["Next"]);

}

else

{ $is_answ='T';

inc_answered_questions($results_id);

set_time_end($results_id);

}

$qtype = get_qtype($question_id);

settype($qtype,"integer");

$amax = get_answ_quantity($question_id);

settype($amax,"integer");

// Увеличиваем кол-во пройденных вопросов

set_time_end($results_id);

//Если тип вопроса "Один из нескольких"

if ($qtype==0)

{

$answ=$HTTP_POST_VARS["answ"];

if ($answ || ($answ=='0') ||($is_answ=='F'))

{

//запись номеров помеченых ответов и подсчет баллов за вопрос

for($i=0;$i<$amax;$i++) $checked_answer[$curq][$i]=FALSE;

$checked_answer[$curq][$answ]=TRUE;

//Проверка правильности ответа

$ans=$HTTP_SESSION_VARS["kkur"][$answ];

$righta = is_right_answer($question_id,$ans);

if ($righta=='T')

{

$right_answer[$curq]=TRUE;

$HTTP_SESSION_VARS["right_answer"][$curq]=TRUE;

}

else

{

$right_answer[$curq]=FALSE;

$HTTP_SESSION_VARS["right_answer"][$curq]=FALSE;

}

if (($test_type==0) && ($right_answer[$curq]==TRUE)) $ascore=get_question_weight($question_id);

else if ($test_type==1) $ascore=get_answ_score($question_id,$answ);

settype($ascore,"integer");

$scores[$curq] =$ascore;

$HTTP_SESSION_VARS["scores"][$curq] =$ascore;

//Если не добиваемся правильного ответа

if (($is_next_when_right=='F') || ($right_answer[$curq]==TRUE) ||($is_answ=='F') )

{ $answer_text[$answ]=addslashes($HTTP_SESSION_VARS["answer_text"][$answ]);

$question_text=addslashes($HTTP_SESSION_VARS["question_text"]);

if (is_showed_question($curq,$results_id)==FALSE)

{

$query="INSERT INTO user_answers VALUES (

'', $results_id, $curq, '".$question_text."','". $answer_text[$answ]."',

NOW(), '".$righta."',$ascore,'".$is_answ."')";

}

else

{

$query="UPDATE user_answers SET user_answer_question='".$question_text.

"', user_answer_answer='".$answer_text[$answ]."', user_answer_time=NOW(),

user_answer_is_right='".$righta."', user_answer_score=".$ascore.

", user_answer_answered='".$is_answ.

"' WHERE user_answer_user_result_id=".$results_id.

" && user_answer_qnumber=".($curq-1);

}

$result=mysql_query($query);

if (mysql_affected_rows()<0)

{

echo('Can not add information into ANSWERS(0) table: '.$query);

if (file_exists("footer.html")) include "footer.html";

exit;

}

}

}

}

//Если тип вопроса "Несколько из нескольких"

elseif($qtype==1)

{ $answ_text='';

for($i=0;$i<$amax;$i++)

{

$answ[$i]=$_POST["answ"][$i];

if ($answ[$i])

{

$checked_answer[$curq][$i]=TRUE;

$ascore = $ascore+get_answ_score($question_id,$answ[$i]);

$answ_text=$answ_text.$HTTP_SESSION_VARS["answer_text"][$i].'\n';

}

}

//Проверка правильности ответа

$aquantity=$amax;

$right_answer[$curq]=TRUE;

$HTTP_SESSION_VARS["right_answer"][$curq]=TRUE;

for ($i=0;$i<$aquantity;$i++)

{ $ans=$HTTP_SESSION_VARS["kkur"][$i];

$righta = is_right_answer($question_id,$ans);

if (($righta=='T')!=($answ[$i]))

{

$right_answer[$curq]=FALSE;

$HTTP_SESSION_VARS["right_answer"][$curq]=FALSE;

break;

}

}

if (($test_type==0) && ($right_answer[$curq]==TRUE)) $ascore=get_question_weight($question_id);

settype($ascore,"integer");

$scores[$curq]=$ascore;

$HTTP_SESSION_VARS["scores"][$curq]=$scores[$curq];

//Если не добиваемся правильного ответа

if (($is_next_when_right=='F') || ($right_answer[$curq]==TRUE) ||(($is_answ=='F')))

{ $answ_text=addslashes($answ_text);

$question_text=addslashes($HTTP_SESSION_VARS["question_text"]);

if (is_showed_question($curq,$results_id)==FALSE)

{

$query="INSERT INTO user_answers VALUES (

'', $results_id, $curq, '".$question_text."','". $answ_text."',

NOW(), '".$righta."',$ascore,'".$is_answ."')";

}

else

{

$query="UPDATE user_answers SET user_answer_question='".$question_text.

"', user_answer_answer='".$answer_text[$answ]."', user_answer_time=NOW(),

user_answer_is_right='".$righta."', user_answer_score=".$ascore.

", user_answer_answered='".$is_answ.

"' WHERE user_answer_user_result_id=".$results_id.

" && user_answer_qnumber=".($curq-1);

}

$result=mysql_query($query);

if (mysql_affected_rows()<0)

{ echo('Can not add information into ANSWERS(1) table ');

if (file_exists("footer.html")) include "footer.html";

exit;

}

}

}

//Если тип вопроса "На соответствие"

elseif (($qtype==3) OR ($qtype==4))

{ //Проверка правильности ответа

$right_answer[$curq]=TRUE;

$HTTP_SESSION_VARS["right_answer"][$curq]=TRUE;

$righta='T';

if ($qtype==3) $pairs=$amax/2;

else $pairs=$amax;

for ($j=0; $j<$pairs; $j++)

{

if (get_corresp_value($question_id,$j)!=$_POST["corr"][$j])

{

$right_answer[$curq]=FALSE;

$HTTP_SESSION_VARS["right_answer"][$curq]=FALSE;

$righta='F';

break;

}

};

if (($test_type==0) && ($right_answer[$curq]==TRUE)) $ascore=get_question_weight($question_id);

settype($ascore,"integer");

$scores[$curq]=$ascore;

$HTTP_SESSION_VARS["scores"][$curq]=$scores[$curq];

if (($is_next_when_right=='F') || ($right_answer[$curq]==TRUE) ||(($is_answ=='F')))

{ $answ_text=addslashes($answ_text);

$question_text=addslashes($HTTP_SESSION_VARS["question_text"]);

if (is_showed_question($curq,$results_id)==FALSE)

{

$query="INSERT INTO user_answers VALUES (

'', $results_id, $curq, '".$question_text."','". $answ_text."',

NOW(), '".$righta."',$ascore,'".$is_answ."')";

}

else

{

$query="UPDATE user_answers SET user_answer_question='".$question_text.

"', user_answer_answer='".$answer_text[$answ]."', user_answer_time=NOW(),

user_answer_is_right='".$righta."', user_answer_score=".$ascore.

", user_answer_answered='".$is_answ.

"' WHERE user_answer_user_result_id=".$results_id.

" && user_answer_qnumber=".($curq-1);

}

$result=mysql_query($query);

if (mysql_affected_rows()<0)

{

echo('Can not add information into ANSWERS(4) table ');

if (file_exists("footer.html")) include "footer.html";

exit;

}

}

}

if($is_answ=='F')

{

$HTTP_SESSION_VARS["right_answer"][$curq]=FALSE;

}

// Если надо среагировать на вопрос, то показываем сообщение

$response_on_right = is_resp_on_right($test_id);

$response_on_wrong = is_resp_on_wrong($test_id);

$explanation = get_explanation($question_id);

$is_explanation = get_is_explanation($test_id);

$text_of_right_message = get_text_of_right_message($test_id);

$text_of_wrong_message = get_text_of_wrong_message($test_id);

if (($response_on_right=='T') && ($right_answer[$curq]==TRUE) &&($NotShowMessages==FALSE))

{ if ($is_explanation=='T') $mes=$text_of_right_message.". ".$explanation;

else $mes=$text_of_right_message;

$mes=addslashes($mes);

?>

<script>

alert("<?=$mes?>");

</script>

<?

}

if (($response_on_wrong=='T') && ($right_answer[$curq]==FALSE) &&($NotShowMessages==FALSE))

{ $mes=$text_of_wrong_message;

if ($is_explanation=='T') $mes=$text_of_wrong_message."\n".$explanation;

else $mes=$text_of_wrong_message;

$mes=addslashes($mes);

$mes=str_replace(chr(10),"\\n",$mes);

?>

<script>

alert("<?=$mes ?>");

</script>

<?

}

//Если правильный ответ то начисляем 1 балл

$test_type = get_test_type($test_id);

$questions_count = get_questions_count($test_id);

if (($right_answer[$curq]==TRUE) && ($is_answ=='T')) $HTTP_SESSION_VARS["rights"]++;

if($is_answ=='F')

{

$scores[$curq]=0;

}

if (($isShowRightWrong==TRUE) && ($is_answ=='T'))

{ if (($is_answ=='T') && ($right_answer[$curq]==TRUE))

{ echo($YourAnswerText.'<font color='.$RightColor.'><b>'.$RightAnswerText.'</B></font>.<BR>');

echo($PrevQuestionText.$question_text.'<BR>');

if ($qtype==0)

{ echo($PrevAnswerText.$answer_text[$answ].'<BR>'); }

elseif($qtype==1)

{ echo($PrevAnswerText.$answ_text.'<BR>'); }

}

else

{ echo($YourAnswerText.'<font color='.$WrongColor.'><b>'.$WrongText.'</B></font>.'); }

}

// Все ли вопросы заданы или нет?

if (($is_next_when_right=='F') || ($right_answer[$curq]==TRUE) || ($is_answ=='F'))

{

if ($HTTP_SESSION_VARS["notanswered_mode"]==TRUE)

{

$curq=get_next_notanswered($test_id,$HTTP_SESSION_VARS["curq"],$results_id);

settype($curq,"integer");

$HTTP_SESSION_VARS["curq"]=$curq;

if ($curq==0) $curq=$questions_count;

}

else

{ $HTTP_SESSION_VARS["curq"]++; }

}

if ($HTTP_SESSION_VARS["notanswered_mode"]==TRUE)

{ $qc=$questions_count-1; }

else

{ $qc=$questions_count-1; }

if (($curq>=($qc+$qcoef)) || ((time()>=$HTTP_SESSION_VARS["finish_time"]) && (get_test_time_limit($test_id)>10)))

// Все вопросы заданы - начинаем обработка результатов

{

$completed=TRUE;

$test_caption=get_test_caption($test_id);

$theme_quantity = get_theme_quantity($test_id);

$show_score = get_is_show_score($test_id);

$show_results_message= get_is_show_results_message($test_id);

$resume_count = get_resume_count($test_id);

$TotalScores =0;

$right_questions=0;

for ($i=0;$i<$theme_quantity;$i++) $theme_scores[$i]=0;

if ($test_type==0)

{

for ($i=0;$i<$HTTP_SESSION_VARS["curq"]+1;$i++)

{

$questionid=get_question_id_by_qnumber($i,$test_id);

$qweight=get_question_weight($questionid);

$ThemeID=get_ThemeID($questionid);

$right_answer[$i]=$HTTP_SESSION_VARS["right_answer"][$i];

if ($right_answer[$i]==TRUE)

{

$TotalScores=$TotalScores+$qweight;

$theme_scores[$ThemeID]=$theme_scores[$ThemeID]+$qweight;

$right_questions++;

}

}

}

elseif ($test_type==1)

{

for ($i=0;$i<$HTTP_SESSION_VARS["curq"]+1;$i++)

{

$q_id=get_question_id_by_qnumber($i,$test_id);

$ThemeID=get_ThemeID($q_id);

$right_answer[$i]=$HTTP_SESSION_VARS["right_answer"][$i];

$scores[$i]=$HTTP_SESSION_VARS["scores"][$i];

$TotalScores =$TotalScores+$scores[$i];

$theme_scores[$ThemeID]=$theme_scores[$ThemeID]+$scores[$i];

}

}

$answered_count=get_answered_questions($results_id);

$test_count=get_questions_count($test_id);

echo ('<BR>'.$TestCompletedText.'<BR><span class="header">'.$TestText.':</span> '.$test_caption.'<BR><BR>');

$Result = '';

$result_text='';/

$total = 0;

for ($i=0;$i<$theme_quantity;$i++)

{

$theme_id = get_theme_id($i,$test_id);

$theme_caption = get_theme_caption($theme_id);

if ($theme_quantity>1)

{

$Result = $Result.'<span class="header">'.$theme_caption.'</span>: ';

$result_text=$result_text.$theme_caption.': ';

}

$MaxPoints = get_max_theme_points($i,$test_id);

$conclusions_count=get_conclusions_count($i,$test_id);

for ($j=0;$j<$conclusions_count;$j++)

{

$ConclType=get_concl_type($test_id);

if ($ConclType==0)

{ $concl_top_border = get_concl_top_border($theme_id,$j);

$concl_low_border = get_concl_low_border($theme_id,$j);

}

else

{ $concl_top_border = get_concl_top_border($theme_id,$j);

$concl_low_border = get_concl_low_border($theme_id,$j);

$concl_top_border = $concl_top_border/100*$MaxPoints;

$concl_low_border = $concl_low_border/100*$MaxPoints;

}

$conclusion = get_conclusion($theme_id,$j);

if ($theme_scores[$i]>=$concl_low_border && $theme_scores[$i]<=$concl_top_border)

{ if (trim($conclusion)!='')

{

$Result = ''.$Result.'<span class="text">'.$conclusion.'</span><BR>';

$result_text=$result_text.$conclusion.'\n';

}

break;

}

}

}

if ($resume_count>0)

{ $MaxPoints = get_max_test_points($test_id);

for ($j=0;$j<$resume_count;$j++)

{ $ConclType=get_concl_type($test_id);

if ($ConclType==0)

{ $concl_top_border = get_resume_top_border($j);

$concl_low_border = get_resume_low_border($j);

}

else

{ $concl_top_border = get_resume_top_border($j);

$concl_low_border = get_resume_low_border($j);

$concl_top_border = $concl_top_border/100*$MaxPoints;

$concl_low_border = $concl_low_border/100*$MaxPoints;

}

$resume = get_resume($j);

if (($TotalScores>=$resume_low_border) && ($TotalScores<=$resume_top_border) && (trim($resume)<>''))

{ $Result = $Result.$resume."<BR>";

$result_text=$result_text.$resume;

}

}

}

if ($show_results_message=='T')

{?>

<table class="table_100">

<tr class="tableheader" colspan="2">

<td class="tableheader"><?=$ResultsText?><td>

</tr>

<tr colspan="2">

<td class="text"><?=$Result?></td>

</tr>

<?

if ($show_score=='T')

{?>

<tr>

<td class="header"><?=$TotalScoresText?></td>

<td class="text"><?=$TotalScores?></td>

</tr>

<?}

?>

</table>

<BR><BR>

<? }

// статистика

if ($ShowStatsAtEnd)

{ $stat='';

$scurq=$curq+1;

$stat_total = get_stat_total($test_id);

$stat_current = get_stat_current($test_id);

$stat_rights = get_stat_rights($test_id);

$stat_time = get_stat_time($test_id);

$qcount = get_questions_count($test_id);

$total_answers = get_answered_questions($results_id);

if (($attempts!==0) && ($total_answers!==0))

{ $perc_right = round(($HTTP_SESSION_VARS["rights"]*100)/$total_answers,2); }

else

{ $perc_right=0; }

settype($HTTP_SESSION_VARS["rights"],"integer");


Подобные документы

  • Обзор средств создания обучающих программ и формирование требований к электронному учебнику. Исследование этапов разработки интерактивного обучающего ресурса. Выбор инструментов реализации. Создание интерфейсной части приложения, проектирование тестов.

    дипломная работа [3,2 M], добавлен 20.05.2013

  • Особенности электронных учебных пособий и основные принципы их создания. Сбор и подготовка исходного материала для электронного учебного пособия. Разработка структуры электронного пособия. Выбор программ и разработка интерфейса электронного учебника.

    дипломная работа [738,5 K], добавлен 27.06.2012

  • Концептуальные основы разработки электронного учебника на основе гипертекстовых технологий. Архитектура учебного пособия. Этапы построения электронного учебника "Информатика" и его структура. Анализ практического использования электронного учебника.

    дипломная работа [104,9 K], добавлен 02.05.2012

  • Отличительные признаки электронного учебника от печатного. Преимущества и недостатки компьютерных систем обучения. Аспекты применения информационных технологий в образовании. Типы педагогических программных средств. Этапы создания электронного практикума.

    курсовая работа [3,0 M], добавлен 28.05.2015

  • Обзор средств создания электронных обучающих систем. Требования к системе проектирования "электронного учебника". Разработка теоретической части и интерактивных примеров. Классификация средств создания электронных учебников. Принципы изложения материала.

    дипломная работа [7,8 M], добавлен 10.01.2013

  • Учебный процесс современных обучающих технологий. Использование компьютерных технологий на уроках иностранного языка. Преимущества и недостатки обучения с помощью ПК. Методические функции, выполняемые компьютером при обучении иностранному языку.

    реферат [28,9 K], добавлен 27.05.2009

  • Рассмотрение основ разработки технического задания. Проектирования структуры программ; описание соответственного алгоритма. Собственно программирование. Тестирование и отладка компьютерных программ. Ознакомление с основными правилами защиты проекта.

    реферат [157,4 K], добавлен 15.11.2014

  • Рассмотрение теоретических и методологических основ создания компьютерных тестов. Описание практической разработки программного обеспечения для контроля знаний студентов. Сравнение экономических и технических параметров аналогичных тестовых программ.

    дипломная работа [1,3 M], добавлен 14.07.2010

  • Понятие о современном электронном учебнике, обзор средств создания обучающих программ и формирование требований к учебнику. Обучающие системы на основе линейного текста и гипертекста, мультимедийные системы. Требования к подготовке тестового материала.

    дипломная работа [912,9 K], добавлен 08.11.2010

  • Краткий обзор и анализ ныне существующих программно-педагогических средств обучения. Методика и порядок разработки электронного учебника по предмету "Язык программирования C++". Общая характеристика и основные формы входных и выходных данных программы.

    курсовая работа [232,6 K], добавлен 10.09.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.