ベストアンサー ※ ChatGPTを利用し、要約された質問です(原文:Mysqlの文字化けについて) Mysqlの文字化けについて 2011/06/01 09:10 このQ&Aのポイント MysqlをPDOからアクセスする際に日本語入力すると文字化けしてしまう問題が発生しています。文字コードの問題が原因として考えられます。PHPMyAdminで文字コードをutf8_general_ciに設定し、PDOでも文字コードをutf8に指定してみましたが、問題は解決されませんでした。 Mysqlの文字化けについて 現在さくらのレンタルサーバを使用しています。 MysqlをPDOからアクセスしているのですが、日本語入力をすると文字化けしてしまいます。 検索した結果、文字コードの問題が多く報告されていたため、 以下のサイト等を参考に、PHPMyAdminで文字コードをutf8_general_ciにして PDOでも文字コードをutf8にしてみました。 しかしながら、PDOから日本語をinsert等するとDB上で「??」が表示されてしまします。 http://d.hatena.ne.jp/sdhr/20100806/1281095806 非常に困っているので、どなたか解決策をご存知でしたらご教授お願い致します。 質問の原文を表示する みんなの回答 (2) 専門家の回答 質問者が選んだベストアンサー ベストアンサー rakujin ベストアンサー率38% (34/89) 2011/06/02 08:45 回答No.2 $con = mysql_connect($server,$user,$password); mysql_query("SET NAMES utf8",$con); 上記のように書いてもだめでしょうか? 私の場合は、ロリポップでしたが、utf8_general_ci にし、上記コードを書きこむと、文字化けしなくなりました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (1) nmktksk ベストアンサー率36% (75/208) 2011/06/01 09:40 回答No.1 mysqlのdefault-character-setにutf8を設定 質問者 補足 2011/06/01 17:20 回答ありがとうございます。 早速調べてみたのですが、default-character-setを変更するには /etc/my.cnfを書き換える必要があると書いてありました。 しかし、さくらのレンタルサーバではmy.cnfはetcの中にありませんでした。 セキュリティの問題でユーザには見えなくなってるとの記事も見つけました。 どのように変更するかも教えていただけないでしょうか。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピューターデータベースMySQL 関連するQ&A phpMyAdmin内での文字化け サーバはさくらインターネットを利用してます。 レンタルサーバから専用サーバに移転したのですが、 専用サーバではphpMyAdminで日本語データの文字化けが起きます。 専用サーバのphpMyAdminからDB作成の際、下記の設定で行い、 MySQLの文字セット UTF-8 Unicode (utf8) MySQLの接続照合順序 utf8_unicode_ci DB の照合順序 utf8_unicode_ci レコードをINSERTする際、下記のように文字コードを指定し、 $sql=mb_convert_encoding($sql,"EUC-JP","EUC-JP"); execute_sql($con, $sql); 実行したら、phpMyAdmin内で日本語データが文字化けしました。 サイト内で表示しているDBデータ(日本語)は文字化けしませんでした。 DB の照合順序をutf8以外(ujis_japanese_ciなど)として、 DBを作った場合、レコードをINSERTしたら、サイト内のDBデータも phpMyAdmin内データもどちらも日本語が文字化けします。 また、レンタルサーバのphpMyAdminからDBデータをエクスポートして、 専用サーバのphpMyAdminからインポートした場合、 読み込むDBデータファイルの文字コードをUTF-8にしなければ、 phpMyAdmin内で日本語データが文字化けしてしまいます。 ただ、UTF-8にしてインポートしてもphpMyAdmin内では 文字化けしませんが、サイト内で表示しているDBデータは 文字化けします。 専用サーバのphpMyAdminから データを日本語の文字列に編集・更新したら、 phpMyAdmin内ではそのデータに関しては文字化けなく表示されますが、 サイト内ではそのデータは文字化けしてしまいます。 専用サーバ情報は下記の通りです。 【専用サーバ】 OS:CentOS 5 Apache 2.2.3 PHP5.1.6 DBサーバ:MySQL 5.0.77 アップしているファイルの文字コード:EUC 分かる方、ご回答、よろしくお願いいたします。 phpMyadminの文字化け さくらレンタルサーバを利用し、問合せフォームを作成しています。 問合せ内容をプロシージャを使いデータベースに格納しています。 タイトルにもありますようにデータベース格納後phpMyAdminで見た際に文字化けしてしまいます。 半角数値は見れるのですが、日本語は文字化けしてしまいます。 環境は以下の通りです。 ■さくらレンタル DB:MySQL クライアントのバージョン: 5.1.30 MySQL の文字セット: UTF-8 Unicode (utf8) MySQL 接続の照合順序 utf8_general_ci テーブルの照合順序utf8_general_ci カラムの照合順序utf8_general_ci ■Web サーバ Apache(バージョン不明 phpMyAdminのバージョン3.2.3 PHPバージョン5.2.11 データベース接続方法 PDOを使用し、プロシージャーをコールしています。 プロシージャーのクリエイト文では文字コードのセットはしていません。 phpMyAdminからプロシージャを直接コールすると文字化け致しません。 $this->dbh = new PDO(DB_NAME, DB_USER, DB_PASSWORD); $this->dbh -> query("SET NAMES UTF-8;"); 上記で接続しています。 ■PHPファイル phpのエンコードはShift-JIS メタタグは以下の用にしています <meta http-equiv="Content-Type" content="text/html; Shift_JIS" /> <meta http-equiv="Content-Language" content="ja" /> プロシージャのパラメーター設定時に mb_convert_encoding($_SESSION['other'],"UTF-8") セッションの値をUTF-8にエンコードして設定しています。 上記のようになっております。 メタタグでUTF-8に設定すればいいのでしょうか? 設定またはエンコード方法で解決できるのでしょうか? 以上、よろしくお願いします。 mysqlの文字化け 初心者です。 よろしくお願いします。m(_ _)m サーバーをsakuraインターネットから海外のbluehostに変更しました。 mysqlのデータが文字化けしてしまって困っています。 sakuraではUTF-8で使用していましたので、bluehostでは照合順序をutf8_general_ciに設定してデータをインポートしました。 phpmyadminの中では問題なく文字化けも起こしていないのですが、WEB側で表示(charset=utf-8)させると、日本語が全部????????????と文字化けを起こしています。 非常に困っています。 どうぞよろしくお願い致します ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム MySQL+PHP文字化け PHPからMySQLを使っています。 MySQLもPHPも文字コードはutf8を使っているのですが、PHPMyAdminから入力した日本語を普通に読み出すと文字化けして「??????」になってしまいます。また、自作コードからの日本語のinsertもできません。 しかし、「set character set utf8」を先に実行しておくといずれも上手くいきます。 これは一体どういうことなのでしょうか? そもそも全てutf8で統一しているつもりなのですが、MySQLかクライアントのどちらかで他のコードが使われているということなのでしょうか? MySQLはstatusなどを見てもutf8になっているので、どちらかと言えばクライアントの方が臭うのですが、よくわかりません。 どうか知恵をおかしください。 MySQL4.0 UTF-8 での文字化け こんにちは MySQL4.0 & PHP4.3 でHTMLは文字コードUTF-8で記述しています。 MySQL4.0の文字コード設定はレンタルサーバーのため不明ですが、 phpMyAdminで、utf-8にてデータを入力しました。 select文でMySQLのデータを拾ってくると文字化けはおきないのですが PHP経由でPOSTされた値を使ってinsertやupdateをかけると文字化けしてしまいます。phpMyAdmin上でも文字化けしていますが、phpMyAdminをEUC-JPにすると、入力した文字が文字化けせずに表示されます。 (が、すでに入っているデータは文字化けします、、、、) 入力画面は metaでUTF-8宣言をしており、ブラウザ(IE)上でエンコードを確認するとUnicode(UTF-8)になっています。4.1みたいにset names を指定するとうまくいくかな?と思ったのですが、やっぱり4.0なので結果は変わらず、でした。PHPのスクリプトそのものは、UTF-8で記述しているのですが、、、、 どういった項目をみなおせばいいのでしょうか? PHPとMySQLをご利用の方 PHPとMySQLをご利用の方 PHPとMySQLを利用している方は沢山いらしゃると思うのですが DBでのData保存はどうなってるのかをお聞きしたく思いました。 当方はサクラインターネットでレンタルしており、 PHPver 5.2.14 を利用しています。 DBの文字コードは(調べ方が分からないのですが・・・) (照合順序:utf8_general_ci)utf8。 カラムもutf8_general_ciにしてあります。 日本語、英語(特殊文字含む)を1つのDBに保存したいと思うのですが 『月曜日』とDBに保存する場合、utf8なら『譛域屆譌・』の様に文字化けしたまま保存し 文字を比較する時や表示する時等、必要な時にutf8からsjisに変換し表示(比較)。 これが一般的なのでしょうか? もちろん、phpMyAdminで表示される文字も化けますが。 他に英語の特殊文字を使う場合(イタリア語やフランス語のアクサン・テギュ等)、 DBへは『ciò che』ようなデータを書き込めばいいのでしょうか? データベースの基礎部分で間違えたらと不安になりましたので 質問いたしました。 よろしくお願い致します。 MySQLでの文字化けについて すいません、教えてください。 PHP(PHP-5.2.4)でCSVファイル を読み込んでMySQL(4.1.22)に INSERTしているのですが文字化けします。 SJIS→utf8_general_ciです。 いろいろ調べて ~ $wk[$i] =mb_convert_encoding($csvfile[$i],'UTF-8','SJIS-win'); ~ とかやってみたのですがうまくいきません。 どなたかよろしくお願いします。 PHPとMySQLで文字化けします <?php $con=mysql_connect("localhost","oxwar2","chono3"); $db=mysql_select_db("oxwar2",$con); $query="insert into japan(id,title,price)values(1,'絵本',1000)"; $result=mysql_query($query,$con); if($result){ print "OK"; } ?> として、実行すると上手くいきますが、phpMyadminで見ますと、日本語の部分だけが文字化けしております。 これを直すにはどうしたらよいのでしょうか。 文字コードはUTF8で作りました。色々試しても同じです。 どのようにしたらよいのでしょうか。 宜しくお願い致します。 phpMyAdminで文字化け PHP5.2.4、MySQLバージョン4.1.16、phpMyAdmin 2.11.1を使用しています。 php側でInnoDBのテーブルを作成して日本語の値を挿入した状態です。 php側では表示などしても文字化けしてないのですが、 phpMyAdminで日本語で登録されているカラムを見ると文字化けしています。 phpMyAdminで日本語の値で更新し直すと、文字化けせずにちゃんと表示されます。 mysqlの設定ファイルで #character-set-server = latin1 #collation-server = latin1_general_ci default-character-set=utf8 skip-character-set-client-handshake として再起動してテーブルを作成し直したのですが文字化けは直りません・・・ 何が原因なのでしょうか? phpMyAdminのテーブルオプション ストレージエンジン:InnoDB 照合順序:utf8-general_ci PHPとMySQLの文字化けに関して PHPとMySQLの文字化けに関して PHPとMySQLを利用したホームページ作成の勉強をしている初心者です。 現在、レンタルサーバーをお借りして、作成したページを表示させようとしておりますが、 文字化けで悩んでおり、解決策をご教授いただきたいと思います。 まず症状についてですが、phpMyAdminを利用してデータを挿入すると、 phpMyAdminでは文字化けしませんが、作成したホームページでは文字化けが発生します。 (???が続くような文字化けです。) 一方、データ挿入用のページを作成し、そこから挿入を行うと、 phpMyAdminでは文字化けが発生しますが、 ホームページ上では一応日本語表示されます。 (phpMyAdminでの文字化けは、こんな感じです。 ã?TMã??ã?¬ã?¢ã??ã?? また、上手く表示できない物もあります。) 希望としては、全ての文字コードをutf-8に統一させたいのですが、 データベース関連の文字コードの設定が出来ず、解決が出来ません。 以下、現在の状況と、素人ながら試してみた点などについて記載します。 (情報の不備などございましたら、お手数ですがご指摘ください。) --------------------------------------------------------------- ■phpinfo関連 □PHP Version 5.1.6 □MySQL Client API version 5.0.82sp1 □default_charset Local Value UTF-8 Master Value no value ■phpMyAdmin関連 □phpMyAdmin Version 2.11.10 □status の結果 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'status' at line 1 □SHOW VARIABLES LIKE 'char%'; の結果 Variable_name Value character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server latin1 character_set_system utf8 character_sets_dir /usr/share/mysql/charsets/ □set character_set_server = utf8; の結果 SQL は正常に実行されました (クエリの実行時間 0.0002 秒) と出ますが、変更されません。 □phpMyAdmin上のデータベースの表 データベース 照合順序 DB1 utf8_general_ci DB2 utf8_general_ci information_schema utf8_general_ci 合計: 3 latin1_swedish_ci ■.htaccess関連 .htaccessを設定してFFFTPでアップロードしても、表示されません。 また、別名ファイルでアップし、アップロード先で名称変更すると、消えてしまいます。 ■その他 ファイル作成にはTeraPadを利用し、 UTF-8Nにて保存しております。 ホームページのメタタグには、 <meta http-equiv="content-type" content="text/html; charset=utf-8" /> というものを設定しております。 php.iniやmy.cnf の設定で解決するとの情報もあり、 当該ファイルを探してみましたが、見つけることができませんでした。 --------------------------------------------------------------- なお、レンタルサーバーでの利用では、 .htaccessやphp.ini、my.cnfの設定が出来ない場合もあるそうですので、 そのような場合、どのような解決法があるのでしょうか? どうぞよろしくお願いいたします。 mySQL 4.0で文字化け はじめまして、PHP+mySQLでプログラムを勉強中の初心者です。 PHPからインサートした日本語データをphpmyadminで確認するとデータが化けています。SQL文自体をPHPで表示させると文字化けせずにちゃんと表示されます。 mySQL 4.1以降なら SET NAMESというコマンドをDB接続後に入れることで問題が回避できると言うことですが、mySQL 4.0ではコマンドエラーになってしまいます。 レンタルサーバーなので、PHPのアプリケーション側で対応できたらと考えています。 何かよい方法がないでしょうか? PHP 4.3.11は mySQL 4.0.27です。 PHPのキャラクターはutf-8, mySQLのCharactersetは latin1となっていました。 よろしくお願いします。 MAMPのMySQLで文字化けする すみません、教えてください(><) mac( os X 10.7.5)でMAMP+Eclipse+PHPを使って以下のようにMySQLにデータ挿入 mysql_connect('localhost','root','root') or die(mysql_error()); mysql_select_db('mymy'); mysql_query('SET NAMES UTF-8'); mysql_query('INSERT INTO item SET id=1, name="あいうえお"'); をしたのですが、 phpMyadminからデータを確認してみると日本語が文字化けしてしまいます。 (phpMyadminからデータを挿入した場合はちゃんと表示されます。) 色々と調べ、 Eclipseの環境設定でワークスペースの文字コードやphpの文字コードをUTF-8にしたり、 MySQLのmy.cnfファイルの中に以下 [client] default-character-set = utf8 [mysqld] skip-character-set-client-handshake default-character-set = utf8 character-set-server = utf8 collation-server = utf8_unicode_ci init-connect = SET NAMES utf8 [mysqldump] default-character-set = utf8 [mysql] default-character-set = utf8 を追加して再起動し、DBを一旦削除して再度作り直して挿入してみたりとやったのですが、改善されません。 サーバ接続の照合順序 は「utf8_general_ci」として作成しています。 コンソールからMySQLへ接続してDBの文字コードを確認してみると character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /Applications/MAMP/Library/share/charsets/ | というかたちになっています。 他にどういった点を改善すればいいのでしょうか? もうお手上げ状態でどうすることも出来ずにいます。。。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム UTF8のPHPコードから日本語をINSERTするとphpMyAdmin上で文字化けしてしまう ・WindowsXP(SP2)IIS5.1 ・PHP 5.2.5 Win32 ・MySQL 5.1.22 RC Win32 ・phpMyAdmin 2.11.4 多言語(日本語と中国語)を扱える簡単なシステムを試作しているのですが、 test1.php(UFT8-BOM無し)からINSERTしたレコードをphpMyAdminから閲覧 すると日本語が「財団法人æ」などと文字化けしまくっています。 test2.phpからSELECTすると、まったく文字化けなく呼び出せます。 また、phpMyAdminから直接INSERTしたレコードば文字化けしません。 当初、MySQL4.1.22-win32や、phpMyAdmin 2.8.2.4だったので、 冒頭の最新バージョンにしたりもしてみましたがだめでした。 過去ログや、Webで昨日さんざん調べてみて、確認したのは以下の設定です。 (1) C:\Program Files\MySQL\MySQL Server 5.1\my.ini: [mysqld] character-set-server = utf8 collation-server = utf8_general_ci init-connect = SET NAMES utf8 [mysqldump] default-character-set = utf8 [mysql] default-character-set = utf8 (2) C:\Inetpub\wwwroot\phpMyAdmin\libraries\config.default.php $cfg['DefaultLang'] = 'utf-8'; $cfg['DefaultConnectionCollation'] = 'utf8_general_ci'; $cfg['DefaultCharset'] = 'utf-8'; (3) MySQL Server Instance Config Wizard UTF8を選択しました(MySQL の文字セット: UTF-8 Unicode (utf8)) MySQL 接続照合順序 utf8_general_ci (mysql_set_charset)PHPでINSERTした時の文字 (mysql_set_charset)PHPでINSERTした時の文字化け 現在、独学でPHPを弄っているのですが 文字化けが起こってしまい色々調べたのですが理解できていないのでこちらで質問させていただきます。 海外・日本向けのホームページを作成中で 日本向けのHTMLについては、 <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> 海外向けのHTMLについては、 <meta http-equiv="content-type" content="text/html; charset=utf-8"> と、設定。 データベースの設定は(全てを理解していないのでコピー) MySQL:MySQL の文字セット: UTF-8 Unicode (utf8) MySQL 接続の照合順序:utf8_general_ci 各テーブル照合順序:utf8_general_ci 各カラムは数値の部分のみ)int、文字列についてはvarchar、utf8_general_ciです。 PHPのver:5.2.14 (レンタルサーバーはsakuraインターネットです。) そこで日本向けのHPからINSERTを行ったところ、 DB内を見ると文字が入っていない状態だったり、文字化け(イ.イイイ(適当))な感じになり 非常に苦戦しております。 私的思考では 『utf8のDBにutf8以外の文字コード(shift_jisやらeuc等)で書き込むから文字化けするのであって 書き込む時にutf8に変換してやれば良い。』と思っております。 (この時点で解釈が間違っているのであれば遠慮無くご指摘頂ければ幸いです。) そこで色々調べてみたのですが mysql_set_charset()関数を記述すると良いとの記事がありました。 ですがこの関数について解釈がままならず・・・(涙 例えばこの関数は $link = my_mysql_connect($host, $user, $passwd) $tmp = mysql_set_charset('sjis', $link); utf8で書き込みをしたutf8の文字コード(データ)をsjisとして表示してくれる訳でしょうか? 簡単に言えば <meta http-equiv="Content-Type" content="text/html; charset=shift_jis">と同様の意味でしょうか? また、PHPからINSERTする時の変換についてはINSERT前に mb_convert_encoding() で変換しなければならないのでしょうか? また、表示もそうですが 海外向け・日本語向けのHPを作成する際はDBを分割するべきなのでしょうか? イタリア語やフランス語については「e」の頭に「`」の様な特殊文字がありますし・・・。 乱文で失礼致しました。 どなたかご教授頂ければ幸いです。 よろしくお願い致します。 phpMyadminの文字化けについて PHPでINSERTしたものをphpMyadminで確認すると 日本語が文字化けしています。 コマンドプロンプトでテーブルを見てみると文字化けは起こっていません。どこを変えればいいのでしょうか? いろんなサイトを参考にmy.iniを直してみてもだめでした。 ----- my.ini ------ [mysqld] default-character-set = utf8 skip-character-set-client-handshake character-set-server = utf8 collation-server = utf8_general_ci init-connect = SET NAMES utf8 skip-character-set-client-handshake [mysqldump] quick max_allowed_packet = 16M default-character-set = utf8 [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates default-character-set = utf8 ----- phpMyadmin ----- テーブルの照合順序 utf8_general_ci mysql> \s Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 バージョンは以下のとおりです。 XAMPP 1.7.1 MySQL 5.1.33 PHP 5.2.9 phpMyadmin mysqlの文字化けが治せません・・・;; 現在、MYSQL+PHPを勉強中の初心者なのですが PHPにて作成したフォームデータをレンタルサーバ上のデータベースへと入力するプログラムを作成したのですが送られた日本語データがphpmyadminで確認すると全て文字化けしてしまいます。 また、データベースのデータをブラウザ上に表示するPHPプログラムでもブラウザ上では文字化けしています。 おそらく、MYSQLの文字コードの指定がまずいとおもうのですがその指定する方法がわかりません。 サーバのOSはFREEBSDで MYSQLは4.0を使用しています。 telnetを使用して、サーバにはアクセスしています。 各charsetは変数、セッション値、グローバル値の順に client utf8 latin1 connection sjis latin1 database latin1 latin1 results utf8 latin1 server latin1 latin1 system utf8 utf8 character sets dir /usr/local/share/mysql/charsets/ /usr/local/share/mysql/charsets/ collation connection sjis_japanese_ci latin1_swedish_ci collation database latin1_swedish_ci latin1_swedish_ci collation server latin1_swedish_ci latin1_swedish_ci となっています。 この質問掲示板も確認したのですが my.cnfやmy.ini等のファイルがサーバ上に 見つからず質問させて頂いております。 どうぞ、よろしくお願い致します。 phpMyAdminでエクスポートすると、~やcmなどが文字化けします。 phpMyAdminでMySQLのテーブルを CSVファイル形式でエクスポートして テキストエディタ(UnEditor)で開いたところ、 「shift-jis変換できない文字を含んでいます。 ?に変換します」 となりました。 ?に変換された文字は、~やcm(全角1文字でcm)などです。 どのようにしたら、文字化けしないで エクスポートできるようになるのでしょうか? 各テーブル、フィールドの照合順序はすべて utf8_general_ci に変更しましたが、 状況はかわりませんでした。 (変更前は、ujis_japanese_ciでした) レンタルサーバの為か、 my.cnfファイルは見つかりません。 ご存知の方がいましたら、教えていただけると、 助かります。m(_ _)m レンタルサーバー:さくら PHP 5.2.x PHP の文字セット:EUC-JP MySQL 5.1 MySQL の文字セット: UTF-8 Unicode (utf8) phpMyAdmin 3.1.3.1 windows XP phpMyAdminにおいて閲覧した時に文字化け こんにちは。haven3と申します。 phpMyAdminにおいて閲覧した時に、日本語の文字化けが発生してしまいます。 経緯としては、 (1)textファイルにて、insert文を記述。(SJISもしくはUTF-8モードでそれぞれtextファイルを作成して試しましたが、文字化けしました。) (2)サーバーにてアップロード後、SSH上で、mysqlコマンドを使用してデータをインポート 下記は、phpMyAdmin上において、表示されている諸情報です。 MySQL - 4.1.20 プロトコルバージョン: 10 サーバー: Localhost via UNIX socket ユーザー: wguowner@localhost MySQL の文字セット: UTF-8 Unicode (utf8) MySQL 接続照合順序: 照合順序 utf8_general_ci phpMyAdmin - 2.8.2.4 MySQL クライアントバージョン: 4.1.18 使用中の PHP 拡張: mysql テーマ/スタイル 日本語 - Japanese 何かお気づきの点がありましたら、情報提供して頂けると助かります。 また、不足している情報があれば、お教え頂けますと幸いです。 よろしくお願いいたします。 MySQL文字化け対応 こんにちは。 1つ教えて頂けないでしょうか。 XAMPP1.8.2をダウンロードしてphpMyAdminを使用し1つテーブルを作成しました。 列のデータ型は4列全てvarchar(255)です。そこにCSVのUTF-8+CRLFで保存したデータを インポートすると日本語の項目列(4列目)が文字化けしてしまいます。また1行目の1列目の 項目に不要な文字化けした文字が付いてしまっています。 php.iniの変更 mbstring.internal_encoding = UTF-8 mbstring.http_output = UTF-8 mbstring.encoding_translation = On mysql\binのmy.iniの変更 init-connect=\'SET NAMES utf8\' collation_server=utf8_unicode_ci character_set_server=utf8 テーブルの照合順序をutf8_general_ciに変更 以上の変更を行っても文字化けしてしまいます。 まだ他に変更しなければならないところがあるのでしょうか? 分かる方おられましたら、教えて頂けないでしょうか。 よろしくお願いします。 mysqlの文字化けについて さくらサーバーのプレミアムプランで、MYSQLが文字化けを起こして困っています。 MYSQL5.1、データベースの文字コードはUTF8です。 UTF8でエンコードされたPHPプログラムからデータをINSERTすると文字化けを起こします。 ハッスルサーバーで同じ環境を再現すると、文字化けは起こしません。 違いは、ハッスルサーバーでは、「character_set_server utf8」になっているのに対して、 さくらサーバーでは、「character_set_server ujis 」となっています。 この、ujisをutf8に変更すれば解決しそうに思うのですが、変更の仕方がわかりません。 アドバイス頂けましたら、幸いです。 注目のQ&A " Some " や " How " が入った曲。 喝を入れてください 学歴差が原因?結婚を考えた方と別れました 持ち家の彼氏との結婚について 私の親に会いたくない同棲中の彼 Win11へのアップグレードについて 天然と言われない対策どうですか? 雨の日の自転車 浮気は一度してしまったら、一生治りませんか? CDが起動しない カテゴリ [技術者向] コンピューター データベース SQL ServerOraclePostgreSQLMySQLNoSQLその他(データベース) カテゴリ一覧を見る OKWAVE コラム 筋トレで痩せやすくなる?基礎代謝アップ&アフターバーン効果の秘密とは! 🎥 ガンダムシリーズを見たい!どこから見るのがオススメ?🔍 花粉症が辛い…直し方ってあるの?🤧🌲 インフルエンザって何?市販薬は効くの?治療費も解説! これって婚活詐欺?アプリで広がる詐欺の手口とは あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
補足
回答ありがとうございます。 早速調べてみたのですが、default-character-setを変更するには /etc/my.cnfを書き換える必要があると書いてありました。 しかし、さくらのレンタルサーバではmy.cnfはetcの中にありませんでした。 セキュリティの問題でユーザには見えなくなってるとの記事も見つけました。 どのように変更するかも教えていただけないでしょうか。