PHP, MySql and Encoding

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
Hi, I'm using mysql 4.0.18 on a web server with PHP 5.1.1 and I'm trying to
pass from the iso-8859-1 encoding to utf8, but I'm still confused about
many questions.

With which encoding data is saved in the DB when data is generated by PHP?
Does it depend to the charset of the php page? And if the string is
inserted in a page by the user in a form and then inserted in the database?

There is any setting of mysql, or any property of the db, of the table or
of the field?

Thank you,

Re: PHP, MySql and Encoding

Hi Carlone,

Quoted text here. Click to load it

Depends on the encoding of the database table or even the column.

Quoted text here. Click to load it

Yes, on all of those levels you mention actually. The lowest level is  
column level.

To learn more about character sets in MySQL see:


Re: PHP, MySql and Encoding

Peter van Schie wrote:
Quoted text here. Click to load it

Not at all.  MySQL stores the data is bytes.  It does not change the  
encoding at all.  All the charset does is affect collation - sorting,  
comparisons, etc.

As for PHP - it all depends on what you put in your strings.  The string  
functions (i.e. strncmp, etc.) are basically latin1.  But echo, etc.  
will just put out what you tell it.

Maybe explaining the problem you're having would be more help.

Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.

Site Timeline