webForumDet fria alternativet

Forum Post Count

24 svar · 390 visningar · startad av voigtann1

voigtann1Medlem sedan juni 20019 519 inlägg
#1

Jag vill att man ska se hur många inlägg användaren har skrevit på forumen totalt. Jag har satt det som session("posts")

Och vill veta hur man Uppdatera en session eller om man ska göra det på något attat sätt.. iallfall.. när man posta ett inlägg eller starta nytt så ska den lägga datan i en databas som heter
posts

men det är där inte användar informationen finns den finns där det heter members

Hur ska man ungefär göra?

Post är "TAL" i access... om det gör någon skillnad

skymanMedlem sedan juli 20012 450 inlägg
#2

För varje inlägg som görs, hämta posts, plussa på 1 och spara igen.
posts=session("posts")
posts=posts+1
session("posts")=posts

erkaMedlem sedan dec. 19996 522 inlägg
#3

Varför skapa en session för det varför inte göra en count på specifik användare ? Sessioner ska man snåla med och bara använda där de verkligen behövs

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#4

Jepp, räkna istället ihop hur många inlägg personen skrivit varje gång det ska presenteras.

voigtann1Medlem sedan juni 20019 519 inlägg
#5

jag vet att session var ett dåligt val.. så jag skrev här..
hur gör man det ni säger?

erkaMedlem sedan dec. 19996 522 inlägg
#6

Ja du exakt när ska du visa hur många inlägg en användare har gjort i forumet ? är det en topplista med de som postar mest eller något dylikt, eller ska du alltid visa användaren hur många inlägg han själv har postat

voigtann1Medlem sedan juni 20019 519 inlägg
#7

som här:

voigtann1
Inlägg: 432

voigtann1Medlem sedan juni 20019 519 inlägg
#8

recset.recordcount

är det så man ska skriva eller??? Hjälp!

@ndersMedlem sedan juni 200032 969 inlägg
#9

Det enklaste är väl att ställa en SELECT COUNT - fråga.

typ:

strSQL = "SELECT COUNT(*) AS Antal FROM tblTabell WHERE UserID = 123"

Mvh,

voigtann1Medlem sedan juni 20019 519 inlägg
#10

så här?:
<% strSQL = "SELECT COUNT(*) AS Antal FROM inlagg WHERE skrivbent = "& Recset("posteduser")%>

vad ska "antal" vara? och hur skriver man ut detta?

@ndersMedlem sedan juni 200032 969 inlägg
#11

Är skrivbent ett talfält så, ja.

Antal är det fältnamn som jag valde.

När du har kört sql-frågan refererar du bara till det som vilket annat fältnamn som helst med objRS("Antal") eller vad du nu kallar ditt recordset.

voigtann1Medlem sedan juni 20019 519 inlägg
#12

jag e helt borta.. har aldrig varit bra med SQL satser.. så det räker typ att skriva det jag har skrevit ovan..
och sen bara skriva RECSET("ANTAL") eller måste man mixtra med koden?

@ndersMedlem sedan juni 200032 969 inlägg
#13

Exekvera SQL-frågan på precis samma sätt som du exekverar dina andra SQL-frågor, det är ingen skillnad. Du får tillbaka ett recordset med en post, en kolumn som heter Antal.

voigtann1Medlem sedan juni 20019 519 inlägg
#14

så här?:
<%
SQL = " COUNT(*) AS Antal FROM inlagg WHERE skrivbent = "& RS2("skribent")
Set RS4 = Databas.Execute(SQL)
%>

??????

@ndersMedlem sedan juni 200032 969 inlägg
#15

Ja, med tillägget:

Response.write "Du har gjort " & RS4("Antal") & ", inlägg ju!"

Om skrivbent är av typen tal, ett id till exempel, det har inte framgått.

Mvh,

voigtann1Medlem sedan juni 20019 519 inlägg
#16

får felet:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
/voigtan/config/readpost.asp, line 17

Rad 17:
Set RS4 = Databas.Execute(SQL)

jag använder namn inte tal

@ndersMedlem sedan juni 200032 969 inlägg
#17

Hm. Varför har du tagit bort SELECT ur frågan?

Det såg jag inte förrän nu.

@ndersMedlem sedan juni 200032 969 inlägg
#18

Om skrivbent är av texttyp så skall du ha apostrofer runt värdet i SQL-frågan.

SQL = "SELECT COUNT(*) AS Antal FROM inlagg WHERE skrivbent = '"& RS2("skribent") &"'"
voigtann1Medlem sedan juni 20019 519 inlägg
#19

hmm.. fan.. nu blev det jobbigt.. varför tog jag bort den?

tog dit den igen:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 2.
/voigtan/config/readpost.asp, line 17

SQL = "SELECT COUNT(*) AS Antal FROM inlagg WHERE skrivbent = '"& RS2("skribent") &"'"
Set RS4 = Databas.Execute(SQL)

@ndersMedlem sedan juni 200032 969 inlägg
#20

Kontrollera att tabell- och fältnamn stämmer. Felmeddelandet säger att varken eller är korrekt. ;)

Mvh,

136 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)