<param name="valign" value="bottom" />
</object>'; */
?>
</td>
</tr></table>
<?
//$content->ShowContent($link, $sublink);
echo '</td><td width="265" valign="top" align="right"><div style="width:265px;">';
$test_q->ShowSuperRatingMain($s);
$test_q->ShowRatingMain($show, $s);
$kol_show = $test_q->ForRead();
$kol_records = $test_q->CountRating();
//$navi->Navigation($show, $kol_records, $kol_show[1], '?link='.$link.'&sublink='.$sublink);
echo '</div></td></tr></table></center>';
}
else if ($link == 1)
{
echo '<center><div style="width:265px; text-align: center;">';
$test_q->ShowSuperRating($s);
$test_q->ShowRating($show, $s);
$kol_show = $test_q->ForRead();
$kol_records = $test_q->CountRating();
$navi->Navigation($show, $kol_records, $kol_show[1], '?link='.$link.'&sublink='.$sublink);
echo '</div></center>';
}
?>
</div>
</div>
<!-- <div id="footer"> </div> -->
</div>
<div class="empty"> </div>
</div>
<div id="footer"> </div>
<script type="text/javascript" src="<?echo $pi.$s;?>includes/scripts/jquery/jquery.pngFix.js"></script>
<script type="text/javascript" src="<?echo $pi.$s;?>includes/scripts/jquery/jquery.alerts.js"></script>
<script type="text/javascript" src="<?echo $pi;?>js/swfobject.js"></script>
<script type="text/javascript" src="<?echo $pi;?>js/ajax.js"></script>
<script type="text/javascript" src="<?echo $pi.$s;?>includes/scripts/js/paginator3000.js"></script>
</body>
</html>
Програмний код сторінки тестування (файл test.php)
<?
session_start();
include_once('core/core_main.php');
$pi = $popmenu->PathIncludes($sublink);
if (isset($show)) $s = '../';
//include_once("core/cl_db.php");
//include_once("modules/users/cl_autorize.php");
//$auth = new cl_authorize();
//$auth->authorize();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
$seomenu = $menu->ShowSeo($link); $seocontent = $content->ShowSeo($link, $sublink);
if (!empty($seocontent[0]))
{
echo '<title>'.$seocontent[0].'</title>';
echo '<meta name="description" content="'.$seocontent[1].'" />';
echo '<meta name="keywords" content="'.$seocontent[2].'" />';
}
else if (!empty($seomenu[0])){
echo '<title>'.$seomenu[0].'</title>';
echo '<meta name="description" content="'.$seomenu[1].'" />';
echo '<meta name="keywords" content="'.$seomenu[2].'" />';
}
else
{
echo '<title>IQ - тест</title>';
echo '<meta name="description" content="тест" />';
echo '<meta name="keywords" content="тест" />';
}
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<link rel="stylesheet" type="text/css" href="css/style.css" />
<link rel="stylesheet" type="text/css" href="css/carousel.css" />
<script src="AC_RunActiveContent.js" language="javascript"></script>
<script src="js/jquery.js" language="javascript"></script>
<script src="js/swfobject.js" type="text/javascript"></script>
<script src="js/ajax.js" type="text/javascript"></script>
<script type="text/javascript">
function setButton(but)
{
document.getElementById(but).disabled = false; // сделать активной
//document.getElementById(but).disabled = 'true'; // сделать не активной
}
function Answer_Underline(id)
{
document.getElementById(id).style.textDecoration = "underline";
}
function Answer_None(id)
{
document.getElementById(id).style.textDecoration = "none";
}
</script>
<script type="text/javascript">
function updateTime() {
$('#showtimer').show(function(){
$(this).load('timershow.php');
});
setTimeout("updateTime()",1000);
}
</script>
</head>
<body onload="updateTime()">
<div id="all-site">
<div id="container">
<div id="flash-holder1">
<div id="header">
<noscript><center><h2><div style="color: red;">Javascript выключен! Для прохождения теста включите javascript в настройках Вашего браузера.</div></h2></center></noscript>
<div style="position: absolute; top: 10px; left: 10px;">
<script language="javascript">
if (AC_FL_RunContent == 0) {
alert("This page requires AC_RunActiveContent.js.");
} else {
AC_FL_RunContent('codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0', 'width', '160', 'height', '240', 'src', 'video', 'allowFullScreen', 'false',
'allowScriptAccess','sameDomain', 'movie', 'images/SSvideo/video',
'salign', ''); //end AC code
}
</script>
<noscript>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="104" height="155" id="video2" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="images/KSvideo/video.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#000000" /><embed src="images/KSvideo/video.swf" quality="high" bgcolor="#000000" width="104" height="155" name="video2" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</noscript>
</div>
</div>
<div class="text-content1">
<?
//unset($_SESSION['last_mas_id']);
$kol_quest2 = $test_q->ForRead(); // количество выводимых вопросов
$kol_all2 = $test_q->CountAll(); // количество всех вопросов
if ($kol_quest2[0] > $kol_all2)
{ echo '<h2>Тест в данный момент не доступен. Попробуйте позже.</h2><br /><a href="index.php">перейти на главную</a>'; }
else
{
if (($_SESSION['last_mas_id']))
{
if ((count($_SESSION['last_mas_id']) + $kol_quest2[0]) >= $kol_all2) {unset($_SESSION['last_mas_id']); $_SESSION['last_mas_id'] = array();}
}
else $_SESSION['last_mas_id'] = array();
if (isset($_POST["enter"]) or ($_SESSION['enter'] == 'power on') or (isset($_GET['test'])))
{
unset($_SESSION['mas_id']);
unset($_SESSION['mas_later_id']);
unset($_SESSION['kol_quest']);
unset($_SESSION['kol_quest_later']);
unset($_SESSION['number_quest']);
unset($_SESSION['number_quest_later']);
unset($_SESSION['mark']);
unset($_SESSION['enter']);
unset($_SESSION['startime']);
unset($_SESSION['finishtime']);
unset($_SESSION['testime']);
unset($_SESSION['test_be_over']);
$mas_id = array();// масив уникальных айдишек
$mas_later_id = array();// масив айдишек, которые пропустил
//$allid = $test_q->SelectAllId(); // масив всех айдишек
$allid_l = $test_q->SelectAllIdL(); // масив всех айдишек легких вопросов - light
$allid_m = $test_q->SelectAllIdM(); // масив всех айдишек cредних вопросов - middle
$allid_c = $test_q->SelectAllIdC(); // масив всех айдишек сложных вопросов - complex
$kol_quest = $test_q->ForRead(); // количество выводимых вопросов
$kol_all = $test_q->CountAll(); // количество всех вопросов
$kol_l = round($kol_quest[0] / 3);
$kol_m = $kol_l;
$kol_c = $kol_quest[0] - $kol_l - $kol_m;
//-------------- !!!! у вопросов нет уровня сложности, только у ответов
//while(count($mas_id) < $kol_quest[0])
//{
// выбераем простые вопросы
$l = 0;
while($l < $kol_l)
{
$number = rand(0,count($allid_l)-1);
if (!in_array($allid_l[$number], $mas_id) and !in_array($allid_l[$number], $_SESSION['last_mas_id'])) { $mas_id[] = $allid_l[$number]; $l++;}
//if (!in_array($allid[$number], $mas_id)) $mas_id[] = $allid[$number];
}
// выбераем средние вопросы
$m = 0;
while($m < $kol_m)
{
$number1 = rand(0,count($allid_m)-1);
if (!in_array($allid_m[$number1], $mas_id) and !in_array($allid_m[$number1], $_SESSION['last_mas_id'])) { $mas_id[] = $allid_m[$number1]; $m++;}
//if (!in_array($allid[$number], $mas_id)) $mas_id[] = $allid[$number];
}
// выбераем сложные вопросы
$c = 0;
while($c < $kol_c)
{
$number2 = rand(0,count($allid_c)-1);
if (!in_array($allid_c[$number2], $mas_id) and !in_array($allid_c[$number2], $_SESSION['last_mas_id'])) { $mas_id[] = $allid_c[$number2]; $c++;}
//if (!in_array($allid[$number], $mas_id)) $mas_id[] = $allid[$number];
}
//}
$_SESSION['mas_id'] = $mas_id;// масив уникальных айдишек в сесию
$_SESSION['kol_quest'] = $kol_quest[0];// количество выводимых вопросов в сесию
$_SESSION['kol_quest_later'] = 0;// количество пропущеных вопросов в сесию
$_SESSION['number_quest'] = 0; // покажчик на первый вопрос
$_SESSION['number_quest_later'] = 0; //покажчик на первий пропущеный вопрос
$_SESSION['mark'] = 0; // сума баллов в сесию
//$_SESSION['startime'] = date("H:i:s"); // начало тестирования в сессию
$_SESSION['startime'] = time(); // начало тестирования в сессию
//$_SESSION['startime'] = time(); // начало тестирования в сессию
}
// проверка или тест был пройден, чтобы не возможно было вернуться назад
if (($_SESSION['test_be_over'] == 'true'))
{
header("Location: finish.php");
exit;
}
if ((isset($_POST["next"])) or (isset($a)))
{
$_SESSION['number_quest'] = $_SESSION['number_quest'] + 1;// для показа следуйщего вопроса в масиве
//$point = $test_q->SelectPoint($test_q->getdriver()->PutContent($_POST['quest_id']), $test_q->getdriver()->PutContent($_POST['ans_id']));
$point = $test_q->SelectPoint($test_q->getdriver()->PutContent($q), $test_q->getdriver()->PutContent($a));
$cal_point = $test_q->Calculation($point, $_SESSION['kol_quest']);
$_SESSION['mark'] = $_SESSION['mark'] + ($cal_point);
$_SESSION['last_mas_id'][] = $test_q->getdriver()->PutContent($q);// масив пройденых айдишек за все попытки
}
else if (isset($_POST["later"]))
{
$later_id = $test_q->getdriver()->PutContent($_POST['quest_id']);
$_SESSION['mas_later_id'][] = $later_id;// масив пропущеных айдишек
$_SESSION['number_quest'] = $_SESSION['number_quest'] + 1;// для показа следуйщего вопроса в масиве
$_SESSION['kol_quest_later'] = $_SESSION['kol_quest_later'] + 1;// для показа следуйщего вопроса в масиве
}
else if (isset($_POST["next_later"]))
{
$_SESSION['number_quest_later'] = $_SESSION['number_quest_later'] + 1;// для показа следуйщего вопроса в масиве
$point = $test_q->SelectPoint($test_q->getdriver()->PutContent($_POST['quest_id']), $test_q->getdriver()->PutContent($_POST['ans_id']));
$cal_point = $test_q->Calculation($point, $_SESSION['kol_quest']);
$_SESSION['mark'] = $_SESSION['mark'] + ($cal_point);
$_SESSION['last_mas_id'][] = $test_q->getdriver()->PutContent($_POST['quest_id']);// масив пройденых айдишек за все попытки
}
if ($_SESSION['number_quest'] < $_SESSION['kol_quest'])
{
$test_q->ShowTest1($_SESSION['mas_id'][$_SESSION['number_quest']]);
}
else if ($_SESSION['number_quest_later'] < $_SESSION['kol_quest_later'])
{
$test_q->ShowTest2($_SESSION['mas_later_id'][$_SESSION['number_quest_later']]);
}
else
{
if ($_SESSION['mark'] < 50) $_SESSION['mark'] = 50;
else if ($_SESSION['mark'] > 170) $_SESSION['mark'] = 170;
unset($_SESSION['finish_mark']);
$_SESSION['finish_mark'] = $_SESSION['mark'];
$_SESSION['finishtime'] = time(); // конец тестирования в сессию
$_SESSION['time'] = $_SESSION['finishtime'] - $_SESSION['startime'] - 2*3600; // время тестирования в сессию
$_SESSION['testime'] = $_SESSION['time'];
unset($_SESSION['mark']);
unset($_SESSION['startime']);
unset($_SESSION['finishtime']);
unset($_SESSION['time']);
// маркер окончания теста
$_SESSION['test_be_over'] = 'true';
header("Location: finish.php");
exit;
}
}
?>
</div>
<center><div><div id="showtimer" style="z-index: 255; width: 130px; height: 50px; background: #000000; margin: 5px 0; padding-top: 10px; color: #ffffff; font-size: 24px; text-align: center; font-weight:600;"></div></div></center>
</div>
</div>
<div class="empty"> </div>
</div>
<div id="footer"> </div>
</body>
</html>