Autor Zpráva
Wolfik
Profil *
Dobrý den,
v programovaní jsem nováček.. Vytvořil jsem dotazník, který se mi ukládá do databáze. Obsahuje 8 otázek a 4odpovědi (input type="radio"), které nabývají číselných hodnot 1-4. Nyní bych chtěl znát v procentech kolik má která odpověď... tady je kod:
<?php
mysql_connect("localhost", "user_name", "password")or die("Nepodařilo se připojit k databázi");
mysql_select_db("databaze_name") or die("Nepodařilo se otevřít databázi");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET NAMES utf8");

$moznost_1_a = mysql_query('select count(*) from dotaznik where reg_predmetu=1');
$moznost_1_b = mysql_query('select count(*) from dotaznik where reg_predmetu=2');
$moznost_1_c = mysql_query('select count(*) from dotaznik where reg_predmetu=3');
$moznost_1_d = mysql_query('select count(*) from dotaznik where reg_predmetu=4');
$odpoved_1_a = round((($moznost_1_a * 100) / ($moznost_1_a + $moznost_1_b + $moznost_1_c + $moznost_1_d)), 2);
$odpoved_1_b = round((($moznost_1_b * 100) / ($moznost_1_a + $moznost_1_b + $moznost_1_c + $moznost_1_d)), 2);
$odpoved_1_c = round((($moznost_1_c * 100) / ($moznost_1_a + $moznost_1_b + $moznost_1_c + $moznost_1_d)), 2);
$odpoved_1_d = round((($moznost_1_d * 100) / ($moznost_1_a + $moznost_1_b + $moznost_1_c + $moznost_1_d)), 2);
?>

<h3>Otázka č. 1:</h3>
<p>
<?php echo "$odpoved_1_a" ?>% - Velmi dobře.<br />
<?php echo "$odpoved_1b" ?>% - Dobře.<br />
<?php echo "$odpoved_1_c" ?>% - Ujde to.<br />
<?php echo "$odpoved_1_d" ?>% - Hrůza.
</p>


ale nefunguje to. Kdyz jsem zkousel třeba echo "moznost_1_a" tak mi to ani nevypíše číslo ale Resource id #3
Googlil jsem a našel jsem odpověď že přes funkci mysql_query nezískám přímo tu hodnotu, že musím použít jinou funkci, ale nevím kterou.

Poradíte mi prosím?

Moderátor Alphard: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
panther
Profil
Wolfik:
že musím použít jinou funkci, ale nevím kterou.
mysql_fetch_cokoliv
blaaablaaa
Profil
$query = "SELECT COUNT(*) AS `cnt`, `reg_predmetu` FROM `dotaznik` WHERE `reg_predmetu` IN(1,2,3,4) GROUP BY `reg_predmetu` ORDER BY `reg_predmetu`";
$res = mysql_query() or die(mysql_error());
$odpovedi = array(1=>"Velmi dobře", "Dobře", "Ujde to", "Hrůza");
while ( $row = mysql_fetch_assoc($res) ) {
   echo $row["cnt"]."% - ".$odpovedi[$row["reg_predmetu"]]."<br />";
}


Ale priste se nejdriv podivej do manualu na php.net
Wolfik
Profil *
Zdravíčko,
děkuji za pomoc. Do manuálu jsem se díval, ale je to těžké když ani nevím, co mám hledat :-)

Zkoušel jsem kod co poslal "blaaablaaa", ale bohuzel mi to háže chybu. Poradíte mi ještě, prosím?

Warning: Wrong parameter count for mysql_query() in /srv/www/docroot/video/zobraz3.php on line 82

tady je řádek 82: $res = mysql_query() or die(mysql_error());
panther
Profil
Wolfik:
mysql_query($query) or die (...);
Wolfik
Profil *
Zdravíčko,

aha, už to běží, děkuju.

Má to ještě jeden háček... :-) Toto mi vypíše počet odpovědí... já bych to ale potřeboval v procentech. Kolik procent má která odpověď.

Moc Vám děkuju že mi pomáháte. vím, jaké to je odpovídat na stupidní dotazy lamerů. Taky pomáhám v diskuzích, ale bohužel v jiné oblasti než programování...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0