MySQLいじっていて、UTF-8を使いたいのだけれど、文字化けしまくるということで、色々調べたんだけれど、何やらいろいろ難しいらしく、自分の場合、とりあえずこれで解決した。
$db = mysqli_connect("DBURI","USERNAME","PASSWORD");
mysqli_set_charset($db, "utf8");
mysqli_query($db,"create database TESTDB default character set utf8");
mysqli_close($db);
$db = mysqli_connect("DBURI","USERNAME","PASSWORD");
mysqli_set_charset($db, "utf8");
mysqli_query($db,"use TESTDB");
$sql =
"create table testTable(
title VARCHAR(200),
date DATE,
detail VARCHAR(1000)
) default character set utf8";
mysqli_query($db,$sql);
mysqli_close($db);
$db = mysqli_connect("DBURI","USERNAME","PASSWORD");
mysqli_set_charset($db, "utf8");
$sql = "use TESTDB";
mysqli_query($db,$sql);
$sql = "insert into testtable (title,date,detail) values('テストニュース1','2008-06-05','こんなニュースがありました');";
mysqli_query($db,$sql);
mysqli_close($db);
echo "test data inputted!";
$db = mysqli_connect("DBURI","USERNAME","PASSWORD");
mysqli_set_charset($db, "utf8");
$sql = "use TESTDB";
mysqli_query($db,$sql);
$sql = "select * from testtable;";
$res = mysqli_query($db,$sql);
mysqli_close($db);
入れなくても大丈夫だったけど、これもいれとくといいらしい
mb_language("uni");
mb_internal_encoding("utf-8");
mb_http_input("auto");
mb_http_output("utf-8");
スイーツタウン 2008/6/30 (10:40)
私も以前、文字化けで困ってました。
でも、↓こちらの方法で直りました。
http://www.yamada-lab.org/doc/win/mysql5/utf8/index.html
一度お試しを。
Takazudo 2008/6/30 (11:05)
はじめまして、Takazudoです。
色々まとまっておりますね。試してみます。
ありがとございます。