That is because you commented out a few lines in ChkString():
if fField_Type = "title" then
if strAllowHTML <> "1" then
fString = HTMLEncode(fString)
end if
' chkBadWords(fString)
' chkString = fString
' exit function
end if
This causes "title" fields to also get to this part of ChkString():
if fField_Type <> "hidden" and _
fField_Type <> "preview" then
fString = Replace(fString, "'", "''")
end if
and that replaces ' with ''
However if you remove the ' in front of those three lines, it breaks when you try to store a title containing a '
To fix that problem you should use "SQLString" instead of title when checking the Title in post_info.asp
If you change line 414 in post_info.asp to:
txtSubject = ChkString(Request.Form("Subject"),"SQLString")
you can remove the ' in front of the checks in title.
p.s. didn't fix it here at the site yet, so you could see the difference yourself.
Pierre