Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #3133

Re: PHP, MySQL and UTF-8?

Path csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail
From "Peter H. Coffin" <hellsop@ninehells.com>
Newsgroups comp.lang.php
Subject Re: PHP, MySQL and UTF-8?
Date Mon, 12 Sep 2011 14:31:46 -0500
Organization A noiseless patient Spider
Lines 35
Message-ID <slrnj6snh2.bek.hellsop@nibelheim.ninehells.com> (permalink)
References <9d6ralFrpkU1@mid.uni-berlin.de>
Mime-Version 1.0
Content-Type text/plain; charset=646
Content-Transfer-Encoding 8bit
Injection-Info mx04.eternal-september.org; posting-host="le/2G4+BNpieVhQI6uJ2Lw"; logging-data="27861"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+Ual1r1pOifTioHVHQf4zc"
User-Agent slrn/0.9.9p1 (OpenBSD)
Cancel-Lock sha1:c4uSKf42COlEpyXEvBfQBekn05c=
Xref x330-a1.tempe.blueboxinc.net comp.lang.php:3133

Show key headers only | View raw


On 12 Sep 2011 16:46:13 GMT, Robert Latest wrote:
> Hello all,
>
> I have UTF-8 characters in my database. They're there, I can see them in
> a MySQL dump as well as in phpmyadmin.
>
> When I retrieve this data from the db and output it via print(), all I get
> is question marks. These come from the server because I see them also in
> wget's output.
>
> In phpmyadmin I see the correct characters in my db. When I insert them
> literally in my HTML they come out as expected. When I print() them as string
> literals in php, they come out correctly as well.
>
> I think I'm opening the db correctly:
>
> $c = new PDO("mysql:host=$host;dbname=$dbname;port=$port;charset=UTF-8",
>             $user, $pass);
>
> So ... how do I retrieve UTF-8 chars from a database?

Are you sure that you're retrieving them incorrectly and are not
printing them incorrectly instead? Write a programs to extract some
data that has UTF-8 multibyte characters in it and try printing the
bin2hex() of the string instead. And do it using the shell/CLI command
first so you can rule out the myriad browser/http server potential
problems. If the hex is correct for UTF-8 then you can stop looking at
the database connection as the problem and start looking at your
rendering of the characters. If it isn't, THEN you can start caring
about the database connection.

-- 
The pig is nothing but a giant dish which walks while waiting to be 
served.
	    --Grimod de La Reynière

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

PHP, MySQL and UTF-8? Robert Latest <boblatest@yahoo.com> - 2011-09-12 16:46 +0000
  Re: PHP, MySQL and UTF-8? Jerry Stuckle <jstucklex@attglobal.net> - 2011-09-12 15:30 -0400
  Re: PHP, MySQL and UTF-8? "Peter H. Coffin" <hellsop@ninehells.com> - 2011-09-12 14:31 -0500
    Re: PHP, MySQL and UTF-8? "A" <a@a.a> - 2011-09-12 22:27 +0200
  Re: PHP, MySQL and UTF-8? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-09-13 16:53 +0200

csiph-web