Avatar billede lukasolsen Nybegynder
24. marts 2005 - 12:56 Der er 23 kommentarer og
1 løsning

Tæl poster!

Hej eksperter,

Jeg kunne godt tænke mig at vide hvordan man kan tælle posterne i en database på følgende måde:

Post nummer 1
Post nummer 2
Post nummer 3

Altså den skal ikke bare udskrive mit id nummer, men den skal benytte sig af en count

På forhånd tak!
Avatar billede ossian Nybegynder
24. marts 2005 - 13:19 #1
Hvilken database er der tale om?
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 14:34 #2
MySQL
Avatar billede ossian Nybegynder
24. marts 2005 - 14:37 #3
Du må lige uddybe lidt.. Skal den både tælle posterne og vise allesammen?
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 14:45 #4
http://www.teammatrix.dk/?page=6
Du kan se at oppe i hvert hjørne står der et # efterfulgt af et nummer.

Det er det eneste jeg godt kunne tænke mig at vide hvordan man gør :)
Avatar billede mini-me Nybegynder
24. marts 2005 - 15:49 #5
Prøv lige at smid dit SQL udtræk...
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 15:56 #6
Jeg har ikke noget SQL udtræk. Det som jeg spørger om, er hvordan man gør det!

Altså hvordan man skriver sit SQL udtræk og hvordan man for den fremvist
Avatar billede mini-me Nybegynder
24. marts 2005 - 15:59 #7
strSQL = "SELECT COUNT("column_name") FROM "table_name"
set rs = conn.execute(strSQL)


response.write(rs("column_name"))

Dette skriver antal poster i databasen ud
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 16:05 #8
Det har ingen interesse. Prøv lige at læs min kommentar: 24/03-2005 14:45:54
Avatar billede mini-me Nybegynder
24. marts 2005 - 16:12 #9
Så kan du vel bare lave en tabel i databasen der hedder posts og så starte med et unikt ID som starter ved 1, når folk så poster deres post vil den automatisk stige +1 hver gang. Så kan du ud foran din tagwall blot kalde dit ID response.write(rs("ID"))
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 16:15 #10
Okay. Men nu er sagen jo bare den, at hvis jeg så sletter en post i min tabel, så skal id nummeret jo også falde, hvilket det ikke bare gør.
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 16:16 #11
Skal benytte mig af en count!
Avatar billede mini-me Nybegynder
24. marts 2005 - 16:31 #12
så laver du et SQL udtræk ala det her som du inkl. i din løkke

while not rs.eof or rs.bof

LastCount = rs("Id") - 1

strSQL = "SELECT COUNT("column_name") FROM "table_name where ID > " & lastCount
set rsCount = conn.execute(strSQL)

rs.movenext
wend

Det må kunne optimeres bedre end dette, men tror dette kan løse dit problem
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 16:35 #13
Vil ikke bruge mine id's til at tælle med. Den skal tælle felterne!
Avatar billede mini-me Nybegynder
24. marts 2005 - 16:37 #14
Her benytter den jo ikke ID til at tælle med, her finder den ud af hvor mange posts der ligger foran et ID...
Avatar billede mini-me Nybegynder
24. marts 2005 - 16:38 #15
eks.:

Tabel
*++ID++*++NAVN++*
-1 - test 1
-2 - test 2
-5 - velokke
-8 - asd


Den første count finder så ud af hvor mange der ligger før ID 1 dvs der er 3 og sådan fortsætter den, når den når til id 5 vil den se at der kun er 1 id der er større end denne osv..
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 16:55 #16
Okay. det kan godtages. Men kan du ikke lige skrive SQL udtrækket ordentligt. Virker ikke rigtig :)

Og så skal den hente fra tabellen communications og feltet id.
Avatar billede mini-me Nybegynder
24. marts 2005 - 16:56 #17
Hmmm post lige din kode her så...
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 17:07 #18
Min kode er ikke nødvendig. Skal bare bruge et eksempel ;)
Avatar billede mini-me Nybegynder
24. marts 2005 - 17:10 #19
' Sikre at vi starter på 0
Lastcount = 1

while not rs.eof or rs.bof

' Her tager vi lascount og trækker 1 fra
LastCount = rs("Id") - 1

strSQL = "SELECT COUNT("column_name") FROM "table_name where ID = " & lastCount
set rsCount = conn.execute(strSQL)

lastCount = rs("Id")

rs.movenext
wend
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 17:16 #20
Din SQL er altså ikke rigtig. Jeg plejer at bruge noget alá dette her:
    SQL = "SELECT COUNT(*) as count FROM communications  "
    set RS = conn.execute(SQL)
Avatar billede mini-me Nybegynder
24. marts 2005 - 17:17 #21
strSQL = "SELECT COUNT(*) AS antalPost FROM "table_name where ID = " & lastCount
set rsCount = conn.execute(strSQL)

response.write(rsCount("AntalPost")
Avatar billede lukasolsen Nybegynder
24. marts 2005 - 17:27 #22
strSQL = "SELECT COUNT(*) AS antal FROM communications WHERE id = " & lastCount & ""
set rsCount = conn.execute(strSQL)

response.write(rsCount("antal"))

Så får jeg denne fejl:
http://www.team-nopanic.dk/communications_version_1/default.asp?page=1
Avatar billede mini-me Nybegynder
24. marts 2005 - 17:41 #23
strSQL = "SELECT COUNT(*) AS antal FROM communications WHERE id > " & lastCount & ""
set rsCount = conn.execute(strSQL)


men forstår ikke den fejl du får...

bliver desværrre nød til at smutte for i dag, håber der er en anden der kan hjælpe dig i mål her.
Avatar billede lukasolsen Nybegynder
25. marts 2005 - 13:23 #24
Lukker lige og omformulerer spørgsmålet!
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