26. juni 2004 - 22:35Der er
33 kommentarer og 2 løsninger
Vise procent på en grafisk måde
Hvis jeg i min tabel har et row som hedder "hits", og en masse tal under denne row, hvordan laver jeg så en "bar", som viser hvor mange procent det enkelte tal er, i forhold til det samlede antal?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
først ligger du alle dine tal sammen, eller henter dette tal ud for sig selv, så du har det under gennemgang af de forskellige poster i din løkke. Nu tager du blot og udfører regnestykket <?php $Procent = $AktuelleAntal / $SamletAntal * 100; ?> Hvorefter du så i en variabel foreksempel kan bestemme hvor lange dine pinde maksimalt skal være og så gange dinne pinde op til dette, og så endeligt skrive en masse divs uden for hver post, hvorved du blot sætter længden på denne og ved hjælp af en baggrundfarve vælger en farve til denne.
Du kan også i stedet for divs benytte noget GDlib. Men svært at sige hvad der ville være bedst i netop dit eksempel uden at se enten noget kode eller bedst af alt, siden i funktion..
det absolut letteste ville være at du lige postede din kode.. ikke fordi jeg gider sidde og lave det hele for dig af den grund (hvis koden er uoverskuelig!), men er vist lettere end at jeg sidder og spørger dig ind til hvordan du foreksempel udfører dine løkker, hvad alle dine andre vars hedder med videre.. (men husk, slet lige koder med videre!)
hvis du så ordner den efter antal, så maks kommer øverst kan du eksempelvis også få BRUGT alle de 400px.. ved at lade 100% være lig 400px.. ellers kan du blot lave en div og heri sætte de andre divs hvorved du blot fastslår længden med de procenter du nu engang har beregnet.. altså <div style="width: <?=$procenter?>%">wee?!</div> men ellers som dennis også har vist.. jeg ville dog nok af hensyn til serveren undlade at ligge de forskellige rows ned i vars som $id, $adresse osv.. er der absolut ingen grund til!
Nu virker det...... næsten.... nu er mit problem bare at bare er lige lang i alle tilfælde... uanset hvor mange procent det er ud af det samlede antal.
prøv blot at indsætte din egen første halvdel af koden ned til $query2 og indsæt så $row["total"] i stedet for total.. din kode er jo for sin vis god nok..
Nu virker det...... næsten.... nu er mit problem bare at bare er lige lang i alle tilfælde... uanset hvor mange procent det er ud af det samlede antal.
prøv at vise os siden hvor du har lavet graferne.. så kan vi selv tjekke det.. men dennis mener din html-bestemte width på de forskellige bar.gif -billeder..
<table width="100%" cellpadding="3" cellspacing="0" style="border:1px solid #000000"> <? $rs = mysql_query("SELECT SUM(hits) AS total FROM visit") or die(mysql_error()); while ($row = mysql_fetch_array($rs, MYSQL_ASSOC)) {
ok.. havde ellers lige svaret.. men jo kun fedt du selv fandt svaret. Division by zero kan du som regel sammenkæde med at variablen nok ikke indeholder det du ønsker, og da er det den helt rigtige fremgangsmåde at udskrive variablerne som du gjorde! Synes dog ikke der er nogen grund til at bruge mysql_result når du allerede en gang har hentet dette ud i dit top! ($row["total"]) men vi skal vel alle starte et sted, og ser ud til at du er rigtig godt på vej! :)
haha.. ja, en oplagt mulighed til et sådant problem.. er ligeglad med pointene hvis det er et problem.. ;) og ja, utrolig irriterende med de mails.. sgu svært at følge med i hvor status er i de 3-4 tråde man følger med i!
.. og der man man bare se.. endnu engang ANER man ikke hvad i har svaret, skønt mailserveren står til promte at advare om nye mails! men fedt at du fik det til at virke!!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.