Avatar billede Slettet bruger
02. september 2001 - 16:13 Der er 36 kommentarer og
1 løsning

Urdræk kun en gang!

Jeg har fx. følgende posts i en tabel:

ID:              Side:
1                default.asp
2                default.asp
3                default.asp
4                hundemad.asp
5                kattemad.asp
6                default.asp

Så vil jeg have det udskrevet sådan her:

Side:                  Besøg:
default.asp          4
hundemad.asp          1
kattemad.asp          1

Hvordan gør jeg det?
Avatar billede netsrac Praktikant
02. september 2001 - 16:22 #1
select side, count(id) as besog from dintabel group by side
Avatar billede burningice Nybegynder
02. september 2001 - 16:23 #2
set rs = conn.execute(\"Select id, side from tabel order by side\")

do until rs.eof
    response.write rs(1) & conn.execute(\"select count(id) from tabel where (side = \'\"& rs(0) &\"\')\")
    rs.movenext
loop

set rs = nothing
Avatar billede burningice Nybegynder
02. september 2001 - 16:24 #3
auch

set rs = conn.execute(\"Select id, side from tabel order by side\")
skal være
set rs = conn.execute(\"Select id, side from tabel group by side\")
Avatar billede burningice Nybegynder
02. september 2001 - 16:26 #4
og
response.write rs(1) & conn.execute(\"select count(id) from tabel where (side = \'\"& rs(0) &\"\')\")
skal være
response.write rs(1) & conn.execute(\"select count(id) from tabel where (side = \'\"& rs(1) &\"\')\")(0)
Avatar billede burningice Nybegynder
02. september 2001 - 16:35 #5
og
response.write rs(1) & conn.execute(\"select count(id) from tabel where (side = \'\"& rs(1) &\"\')\")(0)
skal være
response.write rs(1) & conn.execute(\"select count(id) as id from tabel where (side = \'\"& rs(1) &\"\')\")(0)
Avatar billede Slettet bruger
02. september 2001 - 16:59 #6
øhhh.... og alle dine rettelser giver mig resultatet ....?
Avatar billede burningice Nybegynder
02. september 2001 - 17:02 #7
ja...

set rs = set rs = conn.execute(\"Select id, side from tabel group by side\")

do until rs.eof
    response.write rs(1) & conn.execute(\"select count(id) as id from tabel where (side = \'\"& rs(1) &\"\')\")(0)
    rs.movenext
loop

set rs = nothing


giver dig
default.asp          4
hundemad.asp          1
kattemad.asp          1
Avatar billede Slettet bruger
03. september 2001 - 17:51 #8
hvad bruges rs(1) til?
Avatar billede burningice Nybegynder
03. september 2001 - 17:55 #9
til at udskrive feltet side

Læg mærke til at vi i vores første udtræk vælger id, side from tabel... de har nu hvert sit nr, id = 0, side = 1

ved at bruge rs(1) får vi altså side, rs(\"side\") er det samme, hvis du  er mere vant til den udgave
Avatar billede Slettet bruger
04. september 2001 - 15:27 #10
Microsoft OLE DB Provider for ODBC Drivers fejl \'80004005\'

[Microsoft][ODBC Microsoft Access-driver] En cirkulær reference blev forårsaget af aliaset \"id\" på forespørgselsdefinitionens SELECT-liste.

/webring/webmaster-statistik.asp, linje 84
Avatar billede netsrac Praktikant
04. september 2001 - 15:28 #11
Har du prøvet med min løsning ?
Avatar billede Slettet bruger
04. september 2001 - 15:31 #12
Nej.... Kan du ikke lige fortælle mig, hvordan jeg skal udsirive det?
Avatar billede netsrac Praktikant
04. september 2001 - 15:34 #13
set rs = conn.execute(\"select side, count(id) as besog from dintabel group by side\")
do until rs.eof
response.write(rs(\"side\") & \"=\" & rs(\"besog\"))
rs.movenext
loop
set rs = nothing
Avatar billede Slettet bruger
04. september 2001 - 15:38 #14
Microsoft OLE DB Provider for ODBC Drivers fejl \'80040e14\'

[Microsoft][ODBC Microsoft Access-driver] Du har forsøgt at køre en forespørgsel, der ikke medtager det angivne udtryk \"side\" som en del af en aggregatfunktion.

/webring/webmaster-statistik.asp, linje 95
Avatar billede netsrac Praktikant
04. september 2001 - 15:40 #15
set rs = conn.execute(\"select side, count(side) as besog from dintabel group by side\")
Avatar billede Slettet bruger
04. september 2001 - 15:45 #16
Det virker!!!
jeg har bare lige en ting!!!

Den skal tage det fra tabellen, WHERE page_id = ez(\"id\")

Hvordan gør jeg det?
Avatar billede Slettet bruger
04. september 2001 - 15:47 #17
SORRY... Where page_id=ez(\"id\") and date = date()
Avatar billede netsrac Praktikant
04. september 2001 - 15:48 #18
set rs = conn.execute(\"select page_id, side, count(side) as besog from dintabel where page_id = \" & ez(\"id\") & \" group by side\")
Avatar billede netsrac Praktikant
04. september 2001 - 15:50 #19
set rs = conn.execute(\"select page_id, side, count(side) as besog from dintabel where page_id = \" & ez(\"id\") & \" and dato = #\" & date() & \"# group by side\")

og hvis dit dato felt hedder date kan du godt omdøbe det, det er et reserveret SQL udtryk.
Avatar billede Slettet bruger
04. september 2001 - 16:08 #20
Microsoft OLE DB Provider for ODBC Drivers fejl \'80040e10\'

[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1.

/webring/webmaster-statistik.asp, linje 95




Jeg bruger denne SQL streng:

set rs = conn.execute(\"select side, paggi, count(side) as besog from visit where (page_id=\'\" & ez(\"id\") & \"\') and (dato=\'\" & date() & \"\') group by paggi\")
Avatar billede netsrac Praktikant
04. september 2001 - 16:19 #21
Hvorfor bruger du den ?

er dato et tekst felt ? er page_id et tekstfelt ?
Avatar billede Slettet bruger
04. september 2001 - 18:13 #22
Det er notat felter
Avatar billede Slettet bruger
04. september 2001 - 18:15 #23
har du lyst til at lave det sådan, at der bliver lavet en lille ting som viser tallene visuelt.... altså med fx. nogle bjælker - delt op i procenter
Avatar billede netsrac Praktikant
04. september 2001 - 20:55 #24
Og hvad er paggi ? Hvorfor laver du om på den hele tiden ? Hvordan skal den være ?
Avatar billede Slettet bruger
05. september 2001 - 07:30 #25
paggi er bare page, som jeg har omdøbt
Avatar billede netsrac Praktikant
05. september 2001 - 08:45 #26
Hvad mangler du så nu ?
Avatar billede Slettet bruger
05. september 2001 - 15:59 #27
Jeg kunne godt tænke mig at få udskrivet det som en søjle, det op i procenter
Avatar billede netsrac Praktikant
05. september 2001 - 19:42 #28
Det er ikke såen lige til...

Avatar billede Slettet bruger
06. september 2001 - 13:18 #29
Hvorfor ikke?
Avatar billede netsrac Praktikant
06. september 2001 - 14:41 #30
Fordi man ikke såen lige kan lave søjler i HTML, det er HTML jo ikke skabt til. Desuden skal vi bruge 2 kald til databasen, da vi også skal finde det totale antal af hits.
Avatar billede Slettet bruger
06. september 2001 - 17:24 #31
man kan sagtens lave det i HTML.... Det har jeg gjort mange gange.

Vil du lave det for 150 points extra?

Avatar billede netsrac Praktikant
06. september 2001 - 17:33 #32
Jamen så her da:

set rs = conn.execute(\"select count(side) as besog from dintabel\")
total rs(\"besog\")
set rs = nothing


response.write(\"<table width=\"100\">\")
set rs = conn.execute(\"select page_id, side, count(side) as besog from dintabel where page_id = \'\" & ez(\"id\") & \"\' and dato = \'\" & date() & \"\' group by side\")
Do until rs.eof
    response.write(\"<tr><td width=\"\"\" & int( (rs(\"besog\") / total) * 100 ) & \"\"\" bgcolor=\"\"red\"\">&nbsp;</td><td>&nbsp;</td></tr>\")
rs.movenext
Loop
set rs = nothing
response.write(\"</table>\")

Avatar billede netsrac Praktikant
06. september 2001 - 17:33 #33
Sludder sådan her:

set rs = conn.execute(\"select count(side) as besog from dintabel\")
total rs(\"besog\")
set rs = nothing


response.write(\"<table width=\"\"100\"\">\")
set rs = conn.execute(\"select page_id, side, count(side) as besog from dintabel where page_id = \'\" & ez(\"id\") & \"\' and dato = \'\" & date() & \"\' group by side\")
Do until rs.eof
    response.write(\"<tr><td width=\"\"\" & int( (rs(\"besog\") / total) * 100 ) & \"\"\" bgcolor=\"\"red\"\">&nbsp;</td><td>&nbsp;</td></tr>\")
rs.movenext
Loop
set rs = nothing
response.write(\"</table>\")
Avatar billede Slettet bruger
09. september 2001 - 09:26 #34
Jeg brugte denne sætning til at fikse det med Dennis Knappes hjælp.
strSQL = _
  \"SELECT Count(*) AS UserCount, paggi \" & _
  \"FROM visit \" & _
  \"GROUP BY paggi \" & _
  \"ORDER BY paggi\"
Set rsUsers = Conn.Execute(strSQL)

Do While Not rsUsers.EOF
  Response.Write \"<b>\" & rsUsers(\"usercount\") & \"</b> besøg på \" & rsUsers(\"paggi\") & \"<br>\"
  rsUsers.MoveNext
Loop
Avatar billede Slettet bruger
09. september 2001 - 09:29 #35
Og forresten virkede det med graferne IKKE!
Avatar billede netsrac Praktikant
09. september 2001 - 11:56 #36
Well det kunne du jo have sagt, så kunne vi have gjort noget ved det, nu har jeg bare spildt helvedes lang tid på dit spm og lukker du bare uden at sige at det ikke virkede. Hop da i havnen.
Avatar billede burningice Nybegynder
09. september 2001 - 20:19 #37
øv øv øv, det er brugere som philip som gør eksperten til et kedeligt sted at være :((((
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester