On Thursday 26 June 2008 15:12, Andreas Jung wrote:
--On 26. Juni 2008 14:09:50 +0000 Garry Saddington
<garry@schoolteachers.co.uk> wrote:
I am using Zope 2.9 connected to a Posgres DB via psycopg. My database encoding is UTF8. I am getting the following error when users try to insert text in the database containing £ signs: ERROR: invalid byte sequence for encoding "UTF8": 0xa3
This is due to the encoding of a £ sign in the text being sent to the DB. My question then is how do I make sure that all encodings submiitted from forms are in the correct UTF8 format? Regards
Use ensure that the HTML page uses UTF-8 as encoding (either using <meta-equiv...> within the HTML page or by sending
content-type: text/html; charset=utf-8
as HTTP header.
I have taken this a little further after trying all suggestions in the thread with no success and looked into zope.conf, specifically: # Directive: default_zpublisher_encoding # # Description: # This controls what character set is used to encode unicode # data that reaches ZPublisher without any other specified encoding. # # Default: iso-8859-15 # # Example: # # default_zpublisher_encoding utf-8 As my pages all report as iso-8859-15 I thought a change here would help, but this happens: from OFS.content_types import guess_content_type Error: 'default_zpublisher_encoding' is not a known key name It works on this: Zope Version (Zope 2.9.0, python 2.4.2, win32) And fails on this: Zope Version (Zope 2.9.0-, python 2.4.5, linux2) Any further help would be appreciated. regards Garry ps. just noticed the typo (not mine) in zope.conf - default_zpublisher_encoding should be default-zpublisher-encoding all sorted