| Autor | Zpráva | ||
|---|---|---|---|
| SpotRudloff Profil |
#1 · Zasláno: 24. 4. 2011, 18:23:00 · Upravil/a: SpotRudloff
Dobrý den,
potřeboval bych takovou malou radu. Vytvořil jsem si anketu, která plně funguje, jenže nevím, jak udělat čáru, jakoby graf, která srovnává všechny odpovědi v anketě. Použil jsem trojčlenku, všechno fungovalo, jenže mi něják nejde od hlavy, jak to udělat, aby to nemělo šířku větší, než jakou bych chtěl. Toto je skript, jenž vypisuje anketu: <?php
require_once "db.php";
$select = $mysqli->query("SELECT * FROM poll");
if(!$select) die($mysqli->error);
while($data = $select->fetch_assoc()) {
echo $data['question'] ."<br /><br />";
$select = $mysqli->query("SELECT * FROM poll_votes WHERE poll_id = ". $_GET['poll_id']);
if(!$select) die($mysqli->error);
while($data = $select->fetch_assoc()) {
echo "<a href='vote.php?poll_id=". $data['poll_id'] ."&answer=". $data['id'] ."'>". $data['answer'] ."</a>";
if($select->num_rows > 0) {
$width = ceil(100 * $data['count']) / $select->num_rows;
//$width = 100 - $width;
//echo $select->num_rows;
} else
$width = 1;
//echo " ". $data['count'];
echo "<div style='width:". $width ."px;border:Blue 1px Solid;'></div>";
echo "<br />";
}
}
?>Děkuji předem za radu. |
||
| David1256 Profil |
#2 · Zasláno: 24. 4. 2011, 18:33:18
jak to udělat, aby to nemělo šířku větší, než jakou bych chtěl
Počet hlasů jedné odpovědi / počet hlasů všech odpovědí * maximální šířka(šířka, kterou bys chtěl). |
||
| Louka Profil |
#3 · Zasláno: 24. 4. 2011, 18:34:49 · Upravil/a: Louka
já bych si určil poměr mezi jednotlivými odpověďmi a pak bych vzal max šířku a vydělil to:
edit, takto: width = 1 / (poměr_pro_odpoved / max_width) |
||
| SpotRudloff Profil |
#4 · Zasláno: 24. 4. 2011, 19:17:41
Louka:
Jak myslíš ten poměr? |
||
| Joker Profil |
#5 · Zasláno: 24. 4. 2011, 21:27:42
SpotRudloff:
„Jak myslíš ten poměr?“ Aby ten vzorec fungoval, musela by to být převrácená hodnota poměru hlasů pro danou odpověď (tj. počet všech hlasů / počet hlasů pro danou odpověď), ale asi se do toho Louka zamotal, správně je vzorec co píše David1256 |
||
| panther Profil |
#6 · Zasláno: 24. 4. 2011, 21:38:40
SpotRudloff:
případně pak je ještě druhá možnost, kdy 100% šířky bude mít odpověď, která má nejvíce hlasů (místo celkového počtu hlasů) a ostatní se budou počítat v poměru k ní. Výsledek by pak mohl vypadat podobně jako ve Statistikách zde na diskusi. |
||
| SpotRudloff Profil |
#7 · Zasláno: 24. 4. 2011, 22:23:07
panther:
Ano, ano. To je to co jsem chtěl. Jenže nevím jak na to. Dnes mi to už asi myslet nebude... |
||
| panther Profil |
#8 · Zasláno: 24. 4. 2011, 22:23:53
SpotRudloff:
vzorec máš výše, jen místo celkového počtu příspěvku bude ten, který má hlasů nejvíce (bude brán jako základ). |
||
| SpotRudloff Profil |
#9 · Zasláno: 24. 4. 2011, 22:27:52 · Upravil/a: SpotRudloff
Tak děkuju za radu. Zkusím to sesmolit a řeknu Vám, jestli to půjde.
// EDIT: Tak se mi to nakonec povedlo, opravdu jsem jen potřeboval proměnnou, která obsahovala nejvyšší číslo. To jsem zíkal pomocí $select = $mysqli->query("SELECT max(`count`) as cnt FROM poll_votes");Všm Vám moc děkuji, hlavně Pantherovi a Davidu1256. |
||
|
Časová prodleva: 14 let
|
|||
0