i mitt pagingscript la jag till nr 5, private
username = arrRecords(0,I)
picture = arrRecords(1,I)
gbDate = arrRecords(2,I)
gbTime = arrRecords(3,I)
gbRead = arrRecords(4,I)
private = arrRecords(5,I)
gbMessage = arrRecords(6,I)
gbID = arrRecords(7,I)
Avatar = arrRecords(8,I)
userID = arrRecords(9,I)
vip = arrRecords(10,I)
mobil = arrRecords(11,I)
och får detta svar
Microsoft VBScript compilation error '800a03f2'
Expected identifier
/guestbook/GBcpaging.asp, line 142
private = arrRecords(5,I)
--------^
private finns med här, i sql-strängen och kolumnen finns i db
@ndersMedlem sedan juni 200032 969 inlägg Private är ett nyckelord i VBScript.
Byt namn på variabeln.
Använd gärna ungersk notation, så slipper du dylika problem.
det gick bättre, visste inte hur man bytte namn så jag skapade en ny kolumn som heter pprivate
min sql är nu
if request.form("chkPrivat") = "J" then
SQL = "update tblUsers_guestbook set Private=1 where toUser="&varToUser
objConn.Execute SQL
else
SQL1 = "update tblUsers_guestbook set Private=0 where toUser="&varToUser
objConn.Execute SQL1
end if
och den sparar en etta när man kryssar i rutan, men nedanstående visar inte meddelandet om det är en etta (att meddelandet är privat) utan visar bara gb-inlägget oavsett vad
\<%if pprivate = 1 then%\>
Meddelandet är privat och kan enbart läsas av mottagaren
\<%else%\>
\<%sText = replace(gbMessage,"\<"," ")
sText = replace(gbMessage,"\>"," ")
sText = replace(makeHtml(gbMessage),vbCrLf,"\<br\>")
Response.Write sText%\>\<br\>
\<%End if%\>
emissionMedlem sedan dec. 19996 721 inlägg
WebbisNet skrev:
det gick bättre, visste inte hur man bytte namn så jag skapade en ny kolumn som heter pprivate
Det var bara variabeln du behövde byta namn på.
WebbisNet skrev:
min sql är nu
if request.form("chkPrivat") = "J" then
SQL = "update tblUsers_guestbook set Private=1 where toUser="&varToUser
objConn.Execute SQL
else
SQL1 = "update tblUsers_guestbook set Private=0 where toUser="&varToUser
objConn.Execute SQL1
end if
Bytte du namn på kolumnen så borde det återspeglas här.
får det inte att stå at det är privat med koden
if request.form("chkPrivat") = "J" then
SQL = "update tblUsers_guestbook set pprivate=1 where gbID="&varGBID&""
objConn.Execute SQL
end if
(jag får med variabeln till GBID)
emissionMedlem sedan dec. 19996 721 inlägg Är det uppdateringen som misslyckas eller visningen?
@ndersMedlem sedan juni 200032 969 inlägg På vilket sätt funkar inte visningen då, och hur ser den (relevanta) koden ut?
Det var visst att inget värde sparas i db och inte visningen, kan nån se felet här???
<%
Dim objConn, addPost
Dim varFromUser,varToUser,varGBDate,varIP, varMessage
Dim txtFromUser,txtToUser,txtGBDate,txtIP,txtAddMessage
varFromUser = FriendlySQL(Request.Form ("txtFromUser"))
varToUser = FriendlySQL(Request.Form ("txtToUser"))
varMessage = FriendlySQL(Request.Form ("txtAddMessage"))
varFran = FriendlySQL(Request.Form ("txtName"))
varAvatar = FriendlySQL(Request.Form ("txtAvatar"))
varGBDate = Date()
varGBTime = Time()
varIP = FriendlySQL(Request.Form ("txtIP"))
'varGBID = FriendlySQL(Request.Form ("txtGBID"))
SET objConn = connect()
addPost = "INSERT INTO tblUsers_guestbook"
addPost = addPost & "([fromUser],[toUser],[gbMessage],[gbDate],[gbTime],[gbIP],[Avatar],[gbRead]) "
addPost = addPost & "VALUES('"& varFromUser &"','"& varToUser &"','"& varMessage &"',#"& varGBDate &"#,'"& varGBTime &"','"& varIP &"','"& varAvatar &"',true)"
'response.write addPost
'response.end
if request.form("chkPrivat") = "J" then
varGBID = FriendlySQL(Request.Form ("txtGBID"))
SQL = "update tblUsers_guestbook set pprivate=1 where gbID="&varGBID&""
objConn.Execute SQL
else
SQL1 = "update tblUsers_guestbook set pprivate=0 where gbID="&varGBID&""
objConn.Execute SQL1
end if
objConn.Execute(addPost)
response.redirect "/guestbook/GB.asp?toUser="&varToUser&"&name="&varFran&"&fromUser="&varFromUser&""
%>
visade baa koden, problemet är fortfarande olöst
Ingen etta sätts i pprivate när rutan är markerad
varFromUser = FriendlySQL(Request.Form ("txtFromUser"))
varToUser = FriendlySQL(Request.Form ("txtToUser"))
varMessage = FriendlySQL(Request.Form ("txtAddMessage"))
varFran = FriendlySQL(Request.Form ("txtName"))
varAvatar = FriendlySQL(Request.Form ("txtAvatar"))
varGBDate = Date()
varGBTime = Time()
varIP = FriendlySQL(Request.Form ("txtIP"))
SET objConn = connect()
addPost = "INSERT INTO tblUsers_guestbook"
addPost = addPost & "([fromUser],[toUser],[gbMessage],[gbDate],[gbTime],[gbIP],[Avatar],[gbRead]) "
addPost = addPost & "VALUES('"& varFromUser &"','"& varToUser &"','"& varMessage &"',#"& varGBDate &"#,'"& varGBTime &"','"& varIP &"','"& varAvatar &"',true)"
objConn.Execute(addPost)
response.write addPost
'response.end
[B]if request.form("chkPrivat") = "1" then
varGBID = FriendlySQL(Request.Form ("txtGBID"))
SQL = "update tblUsers_guestbook set pprivate=1 where gbID="& varGBID
objConn.Execute(SQL)
else
SQL = "update tblUsers_guestbook set pprivate=0 where gbID="& varGBID
objConn.Execute(SQL1)
end if[/B]
'response.write SQL
response.redirect "/guestbook/GB.asp?toUser="&varToUser&"&name="&varFran&"&fromUser="&varFromUser&"&id="&varGBID&""
emissionMedlem sedan dec. 19996 721 inlägg Stoppa in ettan/nollan direkt i INSERT:en. Det blir onödigt att köra en UPDATE.
Red: Jag utgår från att det är inlägget som du stoppar in med INSERT som du också vill sätta "pprivate" på. Då måste du i princip göra som jag skrev ovan, eftersom du inte vet vilket id som inlägget har när du ska göra UPDATE:n
jag kan inte sätta det direkt i inserten eftersom användaren bestämmer om det ska vara privat eller inte, ett värde där gäller ju ALLA kommande inlägg, har jag en etta där blir alla privata...inte så det är menat...därför har jag checkboxen som bestämmer värdet
eftersom senaste posten alltid är tom i db så finns åxå ett id så gbID är av typen räknare så det finns ett id
emissionMedlem sedan dec. 19996 721 inlägg
WebbisNet skrev:
jag kan inte sätta det direkt i inserten eftersom användaren bestämmer om det ska vara privat eller inte, ett värde där gäller ju ALLA kommande inlägg, har jag en etta där blir alla privata...
Nu hänger jag inte med. INSERT:en stoppar väl bara in 1 inlägg, så varför skulle det påverka alla?
WebbisNet skrev:
eftersom senaste posten alltid är tom i db så finns åxå ett id så gbID är av typen räknare så det finns ett id
Är senaste posten tom? Finns det en rad i tabellen innan inlägget skapats?
Det påverkar alla genm att när en skriver så ligger det en etta i inserten och inlägget blir hemligt och när nästa skriver så ligger ettan kvar trots att de kanske inte vill att det ska vara det, samma med om man sätter en nolla.....jag vill ha valfriheten genom checkboxen
löste det så här
if request.form("chkPrivat") = varGBID then
SET objConn = connect()
addPost = "INSERT INTO tblUsers_guestbook"
addPost = addPost & "([fromUser],[toUser],[gbMessage],[gbDate],[gbTime],[gbIP],[Avatar],[gbRead], [pprivate]) "
addPost = addPost & "VALUES('"& varFromUser &"','"& varToUser &"','"& varMessage &"',#"& varGBDate &"#,'"& varGBTime &"','"& varIP &"','"& varAvatar &"',true, true)"
objConn.Execute(addPost)
response.write addPost
'response.end
else
SET objConn = connect()
addPost = "INSERT INTO tblUsers_guestbook"
addPost = addPost & "([fromUser],[toUser],[gbMessage],[gbDate],[gbTime],[gbIP],[Avatar],[gbRead], [pprivate]) "
addPost = addPost & "VALUES('"& varFromUser &"','"& varToUser &"','"& varMessage &"',#"& varGBDate &"#,'"& varGBTime &"','"& varIP &"','"& varAvatar &"',true, false)"
objConn.Execute(addPost)
response.write addPost
'response.end
end if
emissionMedlem sedan dec. 19996 721 inlägg Precis, det gick att lösa i INSERT:en. Är fortfarande inte med på allt, men om det funkar så funkar det.