Thread CGI + MySQL = UTF8-Problem (3 answers)
Opened by maral at 2012-12-10 22:54

topeg
 2012-12-11 00:38
#164100 #164100
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Erstmal UTF-8 auf STDOUT erzwingen:
Code (perl): (dl )
binmode(STDOUT, ":encoding(UTF-8)");


Dann sicher stellen das aus der DB UTF-8 kommt:
Code (perl): (dl )
$dbh->{'mysql_enable_utf8'}=1;


Nun noch den passenden Header:
Code (perl): (dl )
print CGI::header(-type => "text/html", -charset => "UTF-8" );


Es kann nun nötig sein die CGI-Parameter zu dekodieren:

Code (perl): (dl )
1
2
use Encode;
sub param { return decode("UTF-8", CGI::param(@_)); }

View full thread CGI + MySQL = UTF8-Problem