26. marts 2004 - 14:50Der er
15 kommentarer og 1 løsning
statistik antal stemmer
Hej. Jeg forsøger at lave et hot or not system og er ved at lave statistik over stemmerne. Hvor fx at der er stemt 7 flest gange på en profil, og der for skal "baren" for den være 100% høj.
Min hotstemmer tabel ser sådan her ud: id hotbillederID profilerID stemmeID point ----------------------------------------------------- 34 55 1 4 8 35 55 1 3 9 36 55 1 53 10 37 58 56 47 5 osv...
profilerID er den profil som stemmen tilhøre. Håber at I kan se hvad det er at jeg vil :-) Jeg kan ikke helt finde ud af det, har kikket en del her rundt på exp og har ikke kunne finde hoved og hale i det.
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
jo - det jeg har lavet er regnet i procent så det nemmeste ville nok være at lave enten 10 billeder hvor det ene er en px, det næst to osv...... eller lave et på en px. og så dele det i op i 10 dele så er en px 10%.....og så kan du jo lade den skrive ud for hver hvor mange procent.....eller over (vil lige sige det med at lave tekst ind over et billede ved jeg ikke hvordan man gør......
Finder lige koden til dig og så prøver jeg at lave et forslag til hvordan det kan gøres grafisk....
<% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("info.mdb") Sql = "SELECT count(*) as varFull_count FROM tblInfo" Set hent0 = conn.execute(sql) Sql = "SELECT count(*) as varMegetGodt FROM tblInfo WHERE dbSvar = 'Meget Godt'" Set hent1 = conn.execute(sql) Sql = "SELECT count(*) as varGodt FROM tblInfo WHERE dbSvar = 'Godt'" Set hent2 = conn.execute(sql) Sql = "SELECT count(*) as varLidtGodt FROM tblInfo WHERE dbSvar = 'Lidt Godt'" Set hent3 = conn.execute(sql) Sql = "SELECT count(*) as varOK FROM tblInfo WHERE dbSvar = 'OK'" Set hent4 = conn.execute(sql) Sql = "SELECT count(*) as varLidtDaarligt FROM tblInfo WHERE dbSvar = 'Lidt Dårligt'" Set hent5 = conn.execute(sql) Sql = "SELECT count(*) as varDaarligt FROM tblInfo WHERE dbSvar = 'Dårligt'" Set hent6 = conn.execute(sql) Sql = "SELECT count(*) as varMegetDaarligt FROM tblInfo WHERE dbSvar = 'Meget Dårligt'" Set hent7 = conn.execute(sql) Sql = "SELECT count(*) as varVedIkke FROM tblInfo WHERE dbSvar = 'Ved Ikke'" Set hent8 = conn.execute(sql)
<% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("info.mdb") Sql = "SELECT count(*) as varFull_count FROM tblInfo" Set hent0 = conn.execute(sql) Sql = "SELECT count(*) as varMegetGodt FROM tblInfo WHERE dbSvar = 'Meget Godt'" Set hent1 = conn.execute(sql) Sql = "SELECT count(*) as varGodt FROM tblInfo WHERE dbSvar = 'Godt'" Set hent2 = conn.execute(sql) Sql = "SELECT count(*) as varLidtGodt FROM tblInfo WHERE dbSvar = 'Lidt Godt'" Set hent3 = conn.execute(sql) Sql = "SELECT count(*) as varOK FROM tblInfo WHERE dbSvar = 'OK'" Set hent4 = conn.execute(sql) Sql = "SELECT count(*) as varLidtDaarligt FROM tblInfo WHERE dbSvar = 'Lidt Dårligt'" Set hent5 = conn.execute(sql) Sql = "SELECT count(*) as varDaarligt FROM tblInfo WHERE dbSvar = 'Dårligt'" Set hent6 = conn.execute(sql) Sql = "SELECT count(*) as varMegetDaarligt FROM tblInfo WHERE dbSvar = 'Meget Dårligt'" Set hent7 = conn.execute(sql) Sql = "SELECT count(*) as varVedIkke FROM tblInfo WHERE dbSvar = 'Ved Ikke'" Set hent8 = conn.execute(sql)
<TABLE> <TR> <TD ALIGN=RIGHT> <B>Antal Meninger:</B><BR> <HR> Meget Godt:<BR> Godt:<BR> Lidt Godt:<BR> OK:<BR> Lidt Dårligt:<BR> Dårligt:<BR> Meget Dårligt:<BR> Ved Ikke: </TD> <TD ALIGN=LEFT> <B><%= hent0("varFull_count")%></B><BR> <HR> <% 'Første er med 1px som bruges igen og igen if Round(ialt1,2) < 5 Then  %>%<BR> if Round(ialt1,2) > 5 AND Round(ialt1,2) < 15 Then <IMG SRC="1px.gif"> elseif Round(ialt1,2) > 15 AND Round(ialt1,2) < 25 Then <IMG SRC="1px.gif"><IMG SRC="1px.gif"> elseif Round(ialt1,2) > 25 AND Round(ialt1,2) < 35 Then <IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"> 'osv elseif Round(ialt1,2) > 95 Then <IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"><IMG SRC="1px.gif"> end if 'her med 10 billeder if Round(ialt2,2) < 5 Then  %>%<BR> if Round(ialt1,2) > 5 AND Round(ialt1,2) < 15 Then <IMG SRC="1px.gif"> elseif Round(ialt1,2) > 15 AND Round(ialt1,2) < 25 Then <IMG SRC="2px.gif"> elseif Round(ialt1,2) > 25 AND Round(ialt1,2) < 35 Then <IMG SRC="3px.gif"> 'osv elseif Round(ialt1,2) > 95 Then <IMG SRC="10px.gif"> end if </TD> </TR> </TABLE>
du burde i stedet lave det i en forspørgelse, og så bare lave noget "group by" på svarmulighederne, og så tælle sammen hvor mange der var med noget count eller lignende..! Det skåner alle serverne en STOR del! Der er jo i det eksempel du giver der, intet forskel på de forskellige tals værdier.. Og havde der været havde det også klart været lettere at ordne via noget php eller asp!
øm det er asp.....og den laver en COUNT på totalen og beregner ud fra det......men igen kommer det vel an på hvor mange muligheder der er, som jeg bruger det i min er det vel lige meget.....om det er "group by" for der kommer ikke flere end dem der er.........
og virker det for ham er det vel også godt nok ? og desuden er det lidt svært at lave noget optimeret når han ikke giver noget kode eller noget.......
Har du en bedre løsning så kom med den :) jeg vil da også gerne se den :) så kan man jo lærer lidt :)
gider ikke sidde og skrive kode til brugere her inde mere.. men vil gerne give tip.. og lad derfor være med at afvise dem så hurtigt! Det var KUN som en hjælp til både jer, men også de servere i kører på!! Og, ja.. du laver en count.. Men ikke kun én.. du henter faktisk RIMLIG mange gange data fra din database.. og langt størstedelen af dataene er ligegyldige, for at vise det resultat du viser..! Det kunne laves i en enkelt forspørgelse, hvor du i stedet brugte din sql-server til at beregne det på..
Nu har jeg ikke lige en sql-server....... og hvordan tæller jeg flere forskellige ting i en count ?
og så vil jeg sige at hvis du ikke vil komme med kodeeksempler håber jeg da ikke du bruger tid på at besvare et spg jeg stiller da jeg ikke vil kunne bruge det til noget.......
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.