|
|
|
| нужно зделать чтобы выводилось кол-во прав.,не прав. ответов и % прав. ответов
распишите пожалуйста(с помощью mysql)
key
</title>
</head>
<body>
<?php
function mysqlcon() {
global $db;
$db = mysql_connect ("localhost","root","");
mysql_select_db ("baza",$db) or die("Не могу подсоединиться к базе: " . mysql_error());
$x = "SELECT COUNT('resultat') FROM mybd where resultat='N'";
$y = "SELECT COUNT('resultat') FROM mybd where resultat='Y'";
$query = "SELECT * FROM mybd";
$res = mysql_query($query);
while($res = mysql_fetch_array($db));
}
if ( (isset($_POST['submit1'])) && ($_POST['submit1'] == 'OK') ) {
$rez = $_POST['resultat'];
$num1 = $_POST['number1'];
$num2 = $_POST['number2'];
$num3 = $_POST['number3'];
$num4 = $_POST['number4'];
$znak = $_POST['znak'];
$znak2 = $_POST['znak2'];
$znak3 = $_POST['znak3'];
if ($znak == 1 && $znak2 == 3 && $znak3 == 5) {
$proverka = $num1 + $num2 + $num3 + $num4;
$proverka2 = (string) $num1 .'+'. $num2 .'+'. $num3 .'+'. $num4;
}
if ( $znak == 2 && $znak2 == 4 && $znak3 == 6) {
$proverka = $num1 - $num2 - $num3 - $num4;
$proverka2 = (string) $num1 .'-'. $num2 .'-'. $num3 .'-'. $num4;
}
if ($znak == 1 && $znak2 == 3 && $znak3 == 6) {
$proverka = $num1 + $num2 + $num3 - $num4;
$proverka2 = (string) $num1 .'+'. $num2 .'+'. $num3 .'-'. $num4;
}
if ($znak == 1 && $znak2 == 4 && $znak3 == 5) {
$proverka = $num1 + $num2 - $num3 + $num4;
$proverka2 = (string) $num1 .'+'. $num2 .'-'. $num3 .'+'. $num4;
}
if ($znak == 1 && $znak2 == 4 && $znak3 == 6) {
$proverka = $num1 + $num2 - $num3 - $num4;
$proverka2 = (string) $num1 .'+'. $num2 .'-'. $num3 .'-'. $num4;
}
if ($znak == 2 && $znak2 == 3 && $znak3 == 5) {
$proverka = $num1 - $num2 + $num3 + $num4;
$proverka2 = (string) $num1 .'-'. $num2 .'+'. $num3 .'+'. $num4;
}
if ($znak == 2 && $znak2 == 3 && $znak3 == 6) {
$proverka = $num1 - $num2 + $num3 - $num4;
$proverka2 = (string) $num1 .'-'. $num2 .'+'. $num3 .'-'. $num4;
}
if ($znak == 2 && $znak2 == 4 && $znak3 == 5) {
$proverka = $num1 - $num2 - $num3 + $num4;
$proverka2 = (string) $num1 .'-'. $num2 .'-'. $num3 .'+'. $num4;
}
if ($proverka == $rez) {
echo 'PRAVILNO';
$resultatik = 'Y';
}else {
echo 'NE PRAVILNO';
$resultatik = 'N';
}
mysqlcon();
$sqladd = "INSERT INTO mybd (`id` , `data` , `vopros` , `otvet` , `pravilno` , `resultat` ) VALUES (
NULL ,NOW(),'".$proverka2."','".$rez."','".$proverka."','".$resultatik."')";
mysql_query($sqladd);
//echo $sqladd;
$query = "SELECT * FROM mybd";
$res = mysql_query($query);
//$row = mysql_num_rows($res);
// if(!$db) exit("Ошибка");
if(mysql_num_rows($res)) {
echo '<table border=1>';
echo '<tr>';
echo "<td>id</td>";
echo "<td>data</td>";
echo "<td>vopros</td>";
echo "<td>otvet</td>";
echo "<td>pravilno</td>";
echo "<td>resultat</td>";
echo '</tr>';
while($row = mysql_fetch_array($res)) {
echo '<tr>';
echo "<td>".$row['id']."</td>";
echo "<td>".$row['data']."</td>";
echo "<td>".$row['vopros']."</td>";
echo "<td>".$row['otvet']."</td>";
echo "<td>".$row['pravilno']."</td>";
echo "<td>".$row['resultat']."</td>";
echo '</tr>';
}
echo "</table>";
}
}
$a=rand(1,20);
$b=rand(1,20);
$x=rand(1,20);
$y=rand(1,20);
$c=rand(1,2);
$q=rand(3,4);
$w=rand(5,6);
if ($c == 1) $znak = '+';
if ($c == 2) $znak = '-';
if ($q == 3) $znak2 = '+';
if ($q == 4) $znak2 = '-';
if ($w == 5) $znak3 = '+';
if ($w == 6) $znak3 = '-';
echo "<h2>$a $znak $b $znak2 $x $znak3 $y= </h2>";
?>
<form action="key.php" method="post"/>
Введите результат:
<input type="text" name="resultat" />
<input type="submit" name="submit1" value="OK"/>
<input type="hidden" name="number1" value="<?php echo $a; ?>"/>
<input type="hidden" name="number2" value="<?php echo $b; ?>"/>
<input type="hidden" name="number3" value="<?php echo $x; ?>"/>
<input type="hidden" name="number4" value="<?php echo $y; ?>"/>
<input type="hidden" name="znak" value="<?php echo $c; ?>"/>
<input type="hidden" name="znak2" value="<?php echo $q; ?>"/>
<input type="hidden" name="znak3" value="<?php echo $w; ?>"/>
</form>
</body>
</html>
<?php
?> | |
|
|
|
|
|
|
|
для: odindvatri
(26.07.2012 в 12:28)
| | up | |
|
|
|
|
|
|
|
для: odindvatri
(27.07.2012 в 10:23)
| | up | |
|
|
|
|
|
|
|
для: odindvatri
(15.08.2012 в 13:58)
| | а что function mysqlcon() делает? у Вас она только к БД подключается и все.... | |
|
|
|
|
|
|
|
для: odindvatri
(15.08.2012 в 13:58)
| | Скажу по секрету.... Только тссс...
Скорее всего вам никто не отвечает, потому что это раздел MySQL.
А вы мало того, что выкладываете кроме него еще и HTML и PHP, так еще и не пользуетесь тегами [ code][/code ], что значительно ухудшает читаемость кода и отбивает желание его читать.
Чтобы получить помошь по SQL, нужно четко сформулировать проблему, относящуюся именно к SQL, а не показывать как вы выводите всю страницу.
А ради одной строчки SQL разбирать 3 экрана нечитаемого кода не очень охото. | |
|
|
|
|
|
|
|
для: odindvatri
(15.08.2012 в 13:58)
| | На сколько я понял в этом бардаке, я бы составил запрос так:
SELECT n+y `all`, n, round(n/(n+y)*100,2)proc_n, y, round(y/(n+y)*100,2)proc_y FROM
( SELECT sum(case resultat when 'N' then 1 end)n
, sum(case resultat when 'Y' then 1 end)y
FROM mybd
)t
| результат содержит 1 строку и 5 столбцов, в которых в:
1 - all - общее число ответов
2 - n - число неверных ответов
3 - proc_n - процент неверных ответов округленный до 2х знаков после точки
4 - y - число верных ответов
5 - proc_y - процент верных ответов округленный до 2х знаков после точки | |
|
|
|