hej,
har fallit för grupptrycket och ändrat till Session("Inloggad") = rs("anvID")
Men efter detta så fungerar inte mina strSQL:
Jag sköter inloggningen på en sida inlogg.txt. Den sidan "fungerar" på så sätt att: det blir rätt ”redirect”
På visa.txt är det tänkt att meddelanderna skall visas. Denna sida funkar inte till fullo, eftersom tanken är att ett systemmeddelande skrivs ut (Namn online) när ngn loggar in.
Tillskrivningen (som sker på inlogg.asp) fungerar dock när man öppnar databasen.
På skriv.asp
Error Type:
Microsoft JET Database Engine (0x80004005)
men tittar jag i databasen , så är inte den sidan tom..
Sista felet är att ingen visas online på sidan online.txt
för att spara plats bifogar jag koderna
I dina filer använder du omväxlande apostrofer och brädgårdar för att omsluta datum. Bestäm dig. Dessutom; det finns ingen anledning att konkatenera in Now() från ASP, använd now() direkt i SQL-frågan istället, eftersom den funktionen finns att tillgå i Jet SQL.
I filen online.txt ställer du ett knepigt villkor i SQL-frågan. "Hämta alla som varit online senare än om en minut". Inte så konstigt att inga visas som online.
På skriv.asp
Error Type:
Microsoft JET Database Engine (0x80004005)
Inte något mer? Inte någon mer text eller en referens till en felande rad?
Får inget felmess. Varför anser du att jag borde få?
@nders skrev:
I filen online.txt ställer du ett knepigt villkor i SQL-frågan. "Hämta alla som varit online senare än om en minut". Inte så konstigt att inga visas som online.
Villkoret skall vara:
Hämta alla som är online nu
@nders skrev:
På skriv.asp
Error Type:
Microsoft JET Database Engine (0x80004005)
Inte något mer? Inte någon mer text eller en referens till en felande rad?
hela meddelande jag får från ISS är
Error Type:
Microsoft JET Database Engine (0x80004005)
Fältet 'chattMedeelande.chattText' får inte vara tomt
refrens till
För att du skrivit ett procenttecken istället för & när du konkatenerar?
Villkoret skall vara:
Hämta alla som är online nu
Det finns inget som heter så. Villkoret borde vara "Hämta alla som varit online de senaste x minuterna". Det är bara att ändra i villkoret.
hela meddelande jag får från ISS är
Error Type:
Microsoft JET Database Engine (0x80004005)
Fältet 'chattMedeelande.chattText' får inte vara tomt
refrens till
Kod:
minCon,Execute strSQL
Skriv då det från början, så slipper vi fråga! Felmeddelandet får du eftersom, som emission påpekar, textarean inte ligger i formuläret. Därmed postas inte heller innehållet, och koden försöker spara en tom sträng.
Jag har ju tidigare (på inlogg.asp) gjort ett "INSERT", så när sidan laddas så finns det redan post i databasen
inlogg.asp har inte det minsta med denna insert att göra! Du borde ha en if-sats runt denna insert som gör att den inte utförs om det inte finns något att stoppa in.
Det jag skriver på skriv2.txt läggs inte in i databasen och följdaktligen så visas inte det på sidan visa2.txt
Har inte hunnit ändra HTML-encodningen
Kan detta vara anledningen till felet?
Eller kan strulet bero på att jag sätter Session("Inloggad") = rs("chattID") dvs en integer och sen försöker jag skriva in Session i ett fält av typen text?
Anledningen är nog som tidigare skrivet i tråden att textarean inte ligger i formuläret, därför skickas inte texten till sidan som ska lägga in det i databasen.
att jag sätter Session("Inloggad") = rs("chattID") dvs en integer och sen försöker jag skriva in Session i ett fält av typen text?
Anledningen är nog som tidigare skrivet i tråden att textarean inte ligger i formuläret, därför skickas inte texten till sidan som ska lägga in det i databasen.
Jag förstår itne vad ni menar, när ni säger att textarean inte ligger i formuläret??
@nders skrev:
att jag sätter Session("Inloggad") = rs("chattID") dvs en integer och sen försöker jag skriva in Session i ett fält av typen text?
Varför gör du det? Tal skall lagras i talfält.
Jag vet att tal skall lagras i talfält. Men jag vet inte hur jag skall lösa annars problematiken
den som är inloggad skall skriva inllägget = avchattUser
strSQL = "SELECT * FROM chattMeddelande WHERE DateDiff('N', skrivTid, Now()) < 30 ORDER BY skrivTid DESC"
Set rs = minCon.execute(strSQL)
n = 0
do while (not rs.EOF) and (n < 20)
strUser = rs("avchattUser")
strMessage = ""
if strUser <> "System" then
strMessage = "<i>" & strUser & "</i>: "
end if
strMessage = strMessage & rs("chattText") & " <small>(" & FormatDateTime(rs("skrivTid"), 3) & ")</small>"
if strUser = "System" then
strMessage = "<font color=""777777""><b><i>" & strMessage & "</i></b></font>"
end if
response.write strMessage & "<br>" &vbCRLF
Mina funderingar:
går det att "koda" så utana tt det blir massor med konfikter