171 |
'<tr><td><input type="button" class="frmLoginButton" value="Дать +1 тест" onClick="navigate(\'/admin/?cmd=plustest&' . $cmdtail . '\');"></td><td></td>' . |
'<tr><td><input type="button" class="frmLoginButton" value="Дать +1 тест" onClick="navigate(\'/admin/?cmd=plustest&' . $cmdtail . '\');"></td><td></td>' . |
172 |
'<td><input type="button" class="frmLoginButton" value="Отнять 1 тест" onClick="navigate(\'/admin/?cmd=minustest&' . $cmdtail . '\');"></td><td></td>' . |
'<td><input type="button" class="frmLoginButton" value="Отнять 1 тест" onClick="navigate(\'/admin/?cmd=minustest&' . $cmdtail . '\');"></td><td></td>' . |
173 |
'<td><input type="button" class="frmLoginButton" value="Убрать тесты" onClick="if (confirm(\'Действительно отнять у выбранных пользователей возможность проходить тесты (до разрешения)?\')) navigate(\'/admin/?cmd=cleartest&' . $cmdtail . '\');"></td><td></td>' . |
'<td><input type="button" class="frmLoginButton" value="Убрать тесты" onClick="if (confirm(\'Действительно отнять у выбранных пользователей возможность проходить тесты (до разрешения)?\')) navigate(\'/admin/?cmd=cleartest&' . $cmdtail . '\');"></td><td></td>' . |
174 |
'<td><input type="button" class="frmLoginButton" value="Версия для печати" onClick="navigate(\'/admin/?cmd=prnusers&' . $cmdtail . '\');"></td><td></td></tr>' . |
'<td><input type="button" class="frmLoginButton" value="Версия для печати" onClick="navigate(\'/admin/?cmd=prnusers&' . $cmdtail . '\');"></td><td></td>' . |
175 |
|
'<td><input type="button" class="frmLoginButton" value="Тесты подробно" onClick="navigate(\'/admin/?cmd=prntests&' . $cmdtail . '\');"></td><td></td></tr>' . |
176 |
'</table><br>'; |
'</table><br>'; |
177 |
else |
else |
178 |
{ |
{ |
227 |
exit; |
exit; |
228 |
} |
} |
229 |
} |
} |
230 |
|
else if ($cmd == 'prntests') |
231 |
|
{ |
232 |
|
if (isset ($req_searchdate) && strlen ($req_searchdate) > 0) |
233 |
|
{ |
234 |
|
$req_searchdate = mysql_escape_string ($req_searchdate); |
235 |
|
$result = amysql_query ("SELECT t1.lastname, t1.firstname, t1.thirdname, t2.* FROM `$UsersTable` AS t1, `$ResultsTable` AS t2 WHERE t1.date >= '$req_searchdate' AND t2.uid=t1.id ORDER BY t1.lastname, t1.firstname, t1.thirdname, -t2.date, -t2.time"); |
236 |
|
} |
237 |
|
else |
238 |
|
{ |
239 |
|
$subl = mysql_escape_string($req_searchlogin); |
240 |
|
$result = amysql_query ("SELECT t1.lastname, t1.firstname, t1.thirdname, t2.* FROM `$UsersTable` AS t1, `$ResultsTable` AS t2 WHERE !(INSTR(t1.login,'$subl')=0) AND t2.uid=t1.id ORDER BY t1.lastname, t1.firstname, t1.thirdname, -t2.date, -t2.time"); |
241 |
|
} |
242 |
|
$cmdtail = (isset($req_searchdate) && strlen ($req_searchdate) > 0 ? 'searchdate=' . urlencode($req_searchdate) : 'searchlogin=' . urlencode($req_searchlogin)); |
243 |
|
if ($row = mysql_fetch_assoc ($result)) |
244 |
|
{ |
245 |
|
echo '<table width="700" bgcolor="#FFF0E0" cellspacing="0" style="border-color: black; border-width: 1 1 1 1; border-style: solid" align="center" class="frmLoginText">'; |
246 |
|
$msg = 'Показаны неверные ответы выбранных пользователей'; |
247 |
|
if (!isset ($req_nohide)) |
248 |
|
$msg .= ' <a href="?cmd=prntests&' . $cmdtail . '&nohide">(+ неотвеченные...)</a>'; |
249 |
|
else $msg = 'Показаны неверные и неотвеченные ответы выбранных пользователей <a href="?cmd=prntests&' . $cmdtail . '">(-)</a>'; |
250 |
|
if (!isset ($req_showall)) |
251 |
|
$msg .= ' <a href="?cmd=prntests&' . $cmdtail . '&nohide&showall">(все...)</a>'; |
252 |
|
else |
253 |
|
{ |
254 |
|
if (isset ($req_nohide)) |
255 |
|
$msg = 'Показаны <i>все</i> ответы выбранных пользователей <a href="?cmd=prntests&' . $cmdtail . '&nohide">(- правильные)</a> <a href="?cmd=prntests&' . $cmdtail . '">(-)</a>'; |
256 |
|
else $msg = 'Показаны ответы выбранных пользователей'; |
257 |
|
} |
258 |
|
echo '<tr><td colspan="2" bgcolor="#E0E0FF" align="center"><b>' . $msg . '</b></td></tr>'; |
259 |
|
$notfirst = 0; |
260 |
|
while ($row) |
261 |
|
{ |
262 |
|
echo '<tr><td bgcolor="#E0E0FF" style="border-width: 1 0 1 0; border-style: solid; border-color: black"><b>' . $row['lastname'] . ' ' . $row ['firstname'] . ' ' . $row ['thirdname'] . ': ' . floor (100 * $row['result'] / strlen ($row ['answers'])) . '%</b></td><td width="150" align="right" bgcolor="#E0E0FF" style="border-width: 1 0 1 0; border-style: solid; border-color: black"><b>' . $row ['date'] . ' ' . $row ['time'] . '</b></td></tr>'; |
263 |
|
$res2 = amysql_query ("SELECT * FROM `$QuestionsTable` WHERE `varid`=${row['varid']} ORDER BY `id`"); |
264 |
|
$quests = array (); |
265 |
|
while ($row2 = mysql_fetch_assoc ($res2)) |
266 |
|
{ |
267 |
|
$quests [$row2['id']] = $row2; |
268 |
|
$quests [$row2['id']]['answer0'] = 'не отвечено'; |
269 |
|
} |
270 |
|
$allanswers = true; |
271 |
|
$noshown = true; |
272 |
|
$i = 0; |
273 |
|
foreach ($quests as $cq) |
274 |
|
{ |
275 |
|
if (strlen ($row ['answers']) > $i) |
276 |
|
{ |
277 |
|
if ($row['answers']{$i} != $cq['rightanswer']) |
278 |
|
{ |
279 |
|
$allanswers = false; |
280 |
|
if ($row['answers']{$i} != 0 || isset ($req_nohide)) |
281 |
|
{ |
282 |
|
echo '<tr><td colspan="2">' . $cq ['id'] . '. ' . $cq ['question'] . ' => <font color=red>' . $cq ['answer' . $row['answers']{$i}] . '</font></td></tr>'; |
283 |
|
$noshown = false; |
284 |
|
} |
285 |
|
} |
286 |
|
else if (isset ($req_showall)) |
287 |
|
{ |
288 |
|
echo '<tr><td colspan="2">' . $cq ['id'] . '. ' . $cq ['question'] . ' => <font color=blue>' . $cq ['answer' . $row['answers']{$i}] . '</font></td></tr>'; |
289 |
|
$noshown = false; |
290 |
|
} |
291 |
|
} |
292 |
|
} |
293 |
|
if ($allanswers) |
294 |
|
echo '<tr><td colspan="2">Пользователь ответил на <b>все</b> вопросы правильно! Молодец :)</td></tr>'; |
295 |
|
else if ($noshown) |
296 |
|
echo '<tr><td colspan="2">Пользователь не отвечал ни на один вопрос :(</td></tr>'; |
297 |
|
$row = mysql_fetch_assoc ($result); |
298 |
|
$notfirst = 1; |
299 |
|
} |
300 |
|
echo '</table>'; |
301 |
|
} |
302 |
|
echo '<p class="frmLoginText" align="center">Внимание: для корректного вывода информации текущие вопросы в БД должны соответствовать тем, на которые отвечали выбранные пользователи<br><a href="?cmd=users&' . $cmdtail . '">Назад</a></p></body></html>'; |
303 |
|
exit; |
304 |
|
} |
305 |
} |
} |
306 |
|
|
307 |
mysql_finish (); |
mysql_finish (); |