Re: Euro symbol and other characters distorted
Re: Euro symbol and other characters distorted
- Subject: Re: Euro symbol and other characters distorted
- From: Paul Lynch <email@hidden>
- Date: Wed, 14 Jun 2006 14:07:56 +0100
On 14 Jun 2006, at 12:57, David Griffith wrote:
Ok I have just written a little routine to load each BLOB in WO and
then write that back to a TEXT column instead. What is happening
now is that WO is receiving the text but with '?' instead of
special characters. When I then write that back to the TEXT
column, the '?' is written instead of the original character. So
now I end up with all the text with loads of '?' scattered
throughout it.
It may help if I point out that, in Unicode, a character with a ?
inside of a black diamond is called the "Unicode replacement
character", and it sometimes shows up, in some encodings, as a
plain ?. This character is supposed to be used when an invalid
Unicode character is detected.
Any idea how to avoid that?
Then, if I go to the database using Navicat and I change one of the
'?' to a • (bullet in case that did not appear correctly), it saves
and displays fine in Navicat but on my web pages it shows: 'â?¢'.
This is the same problem I am having with the euro symbol. Any ideas?
You definitely have an encoding mismatch. Something isn't working
the way you think it is. Sorry I can't be more specific; this sort
of problem is usually extremely painful to work out. For what it's
worth. I have a feeling that it's the encoding somewhere between the
database and your application that is wrong.
Paul
Kind regards,
David.
On 13 Jun 2006, at 17:07, David Griffith wrote:
Just let me be sure that I am clear on all of this:
The JDBC adaptor uses a default encoding of UTF-8 so I should not
need to specify anything on the connection URL.
I have set the page wrapper of my site to have the content
encoding set to UTF8.
I have included the code that someone posted on here to put in
Application and Session classes to force UTF8.
I need to convert (somehow) the BLOBs to TEXT fields in mySQL with
UTF-8 encoding, which is what I was trying to do but it is
truncating them all.
Do I need to specifically convert all columns in the database to
UTF8? Or does it matter?
Is there anything else I need to do when working with mySQL 4.1.x
apart from using 3.0.x Connector-J?
If not, I am stumped.... I have done all this except of the BLOB
to TEXT conversion.
Kind regards,
David.
On 13 Jun 2006, at 17:00, David Griffith wrote:
HI Xavier,
Sorry I see what you mean about the email, I'll start a fresh one
in the future to avoid problems..
I'm talking about types in mySQL. I am using mySQL 4.1.19 with
connector-j 3.0.17. Having read on the list (and the problem
with BLOBs returning hex instead of text) I reverted to using
3.0.17 from 3.1.7. I cannot get any 3.1.x connector-j to work
correctly with BLOBs.
I have tried converting the BLOB columns in mySQL to TEXT and
MEDIUMTEXT but it truncates so much that it destroys the data.
I can't figure any other reasonable way of converting them. If I
can convert them to TEXT columns in mySQL successfully, that will
be a start. However I am now getting the Euro symbol (which is
in a VARCHAR) displaying as rubbish as well where that used to be
fine before. I think that has only happened since I added the
UTF8 code (application and session) and changed the header in the
HTML pages to force UTF8.
It's a real nightmare.. I was actually in the process of trying
to convert the whole thing over to FrontBase as I just cannot
figure out what to do about this. The problem is the conversion
to Frontbase will take a while too with all the referenital
integrity stuff so I have to be careful and I don't want to lose
any data either.
Kind regards,
David.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden