Knowledge Base

BUG: Text After First Double Quote Is Not Displayed in Form View

Article ID: 166894

Article Last Modified on 5/2/2006


APPLIES TO


This article was previously published under Q166894

SYMPTOMS

When viewing the content of a database with a form created by the DataForm Wizard, if the database has a record with text of the form something "quoted text," nothing starting with the first double quote is displayed.

CAUSE

The function named QuotedString in the file xxxForm.asp generated by the wizard has this function:
   Function QuotedString(varTemp)
      If IsNull(varTemp) Then
         QuotedString = Chr(34) & Chr(34)
      Else
         QuotedString = Chr(34) & CStr(varTemp) & Chr(34)
      End If
   End Function
				
However CStr(varTemp) needs to be HTML encoded, so if the string includes a double quote, it is changed to an equivalent value including the escape character of the double quote (Chr(34)).

RESOLUTION

The function that needs to be changed in the XXXForm.asp is called QuotedString. The correct function should look like this:
   Function QuotedString(varTemp)
      If IsNull(varTemp) Then
        QuotedString = Chr(34) & Chr(34)
      Else
        QuotedString = Chr(34) & Server.HTMLEncode(CStr(varTemp)) & Chr(34)
      End If
   End Function
				

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. We are researching this bug and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

Steps to Reproduce Behavior

  1. Create a form with the DataForm wizard.
  2. Create a record with a TextField content of the form: something "quoted text."
  3. Try to view the record with xxxForm.asp.

REFERENCES

For the latest Knowledge Base articles and other support information on Visual InterDev and Active Server Pages, see the following page on the Microsoft Technical Support site:

Keywords: kbbug kbdatabase kbwizard kbctrl kbpending KB166894