teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

12

質問内容を変えました。プログラミングで乗り越えようと路線変更したので。

2021/04/04 13:52

投稿

creator.M
creator.M

スコア80

title CHANGED
@@ -1,1 +1,1 @@
1
- MySQLでDumpした内容で文字化けあり解決したい
1
+ MySQLでDumpした内容で文字化けするので、phpでエクスポートしたい
body CHANGED
@@ -1,3 +1,10 @@
1
+ すみません。
2
+ 下記の状況なので、色々調べました。
3
+ 最終的に現在動いているphpのソースコードのファイルに、エクスポートできるようにソースコードを追加することで、解決したいと思います。
4
+ ネットで調べていますが、sqlでエクスポートしてMyAdminでインポートできるようにしたいです。
5
+
6
+
7
+
1
8
  PHPが5系で動くシステムをサーバー引越しで、PHP7.3で動くサーバーに移転しました。
2
9
  データベースも移転しましたが、myadminなどで確認したところ文字化けがありました。
3
10
 
@@ -96,4 +103,6 @@
96
103
  var_dump($set);
97
104
 
98
105
  ```
99
- ![![イメージ説明](6b4f5fdcbecafb9fb8eed6d9b80cb698.png)](8417db9f287035ba1885b59f90188213.png)
106
+ ![![イメージ説明](6b4f5fdcbecafb9fb8eed6d9b80cb698.png)](8417db9f287035ba1885b59f90188213.png)
107
+
108
+ MyAdminで文字化けせずにエクスポートできたら良いのですが、プログラムでデータベースにアクセスすると正常に読み込めるのです。

11

調査内容を追記しました。

2021/04/04 13:52

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -78,4 +78,22 @@
78
78
 
79
79
  --default-character-set=utf8mb4
80
80
  で試した結果です。
81
- ![イメージ説明](6a62f42486b146bc8c32de68da09e890.png)
81
+ ![イメージ説明](6a62f42486b146bc8c32de68da09e890.png)
82
+
83
+ 正常に稼働しているコアサーバーのphpソースに、下記のようにvar_dumpを追加して、変数の中身を確認しました。
84
+ 文字化けせずに、正常に読み込まれていることを確認しました。
85
+ 差し障りがあるので、画像を加工しました。
86
+
87
+ この結果から、PHPでプログラムを作ることで解決できそうに思います。
88
+ でも、なぜ、MyAdminのエクスポートで文字化けするのかは、謎です。
89
+ 文字化けの状態で保存されているのか、推測するしかないです。
90
+
91
+ ```php
92
+ function page_header(){
93
+ $spl = mysql_query("select * from setting");
94
+ $set = mysql_fetch_array($spl);
95
+
96
+ var_dump($set);
97
+
98
+ ```
99
+ ![![イメージ説明](6b4f5fdcbecafb9fb8eed6d9b80cb698.png)](8417db9f287035ba1885b59f90188213.png)

10

--default-character-set=utf8mb4で試した結果の画像を掲載しました。

2021/04/04 06:14

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -74,4 +74,8 @@
74
74
 
75
75
 
76
76
  dumpを行うときに、文字コードを指定しましたが直りませんでした。
77
- ![イメージ説明](9fcbeca0d006338788dcfa467ff75956.png)
77
+ ![イメージ説明](9fcbeca0d006338788dcfa467ff75956.png)
78
+
79
+ --default-character-set=utf8mb4
80
+ で試した結果です。
81
+ ![イメージ説明](6a62f42486b146bc8c32de68da09e890.png)

9

文字コード指定で試した結果の画像をアップしました。

2021/04/02 13:25

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -70,4 +70,8 @@
70
70
 
71
71
  EUCになっている部分も、文字化けしています。
72
72
  コアサーバー なので、ネットで知ったMySQLの文字コード設定の方法を試すのを躊躇しています。
73
- 文字コードの設定を変えても、影響ないでしょうか?
73
+ 文字コードの設定を変えても、影響ないでしょうか?
74
+
75
+
76
+ dumpを行うときに、文字コードを指定しましたが直りませんでした。
77
+ ![イメージ説明](9fcbeca0d006338788dcfa467ff75956.png)

8

utf8 general_ci で照会順序設定されていますが、文字化けしています。の画像で、データが表示されていたので、隠しました。

2021/04/02 12:49

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -59,8 +59,7 @@
59
59
  画像を追加します。
60
60
  ![イメージ説明](8633670db036dd7ed1bfb8f63abb2cce.png)
61
61
  utf8 general_ci で照会順序設定されていますが、文字化けしています。
62
- ![イメージ説明](feb7ad87c4b93fb96c798a88146843f2.png)
62
+ ![イメージ説明](314854d47674cdf5316d1f7390b72676.png)
63
-
64
63
  テキストエディタで開いたキャプチャです。
65
64
  ![イメージ説明](eaa8d04a5fa8f72353ee4a7396b9cd77.png)
66
65
 

7

テキストエディタ で開いた時の画像を追加しました。

2021/04/02 10:27

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -61,6 +61,14 @@
61
61
  utf8 general_ci で照会順序設定されていますが、文字化けしています。
62
62
  ![イメージ説明](feb7ad87c4b93fb96c798a88146843f2.png)
63
63
 
64
+ テキストエディタで開いたキャプチャです。
65
+ ![イメージ説明](eaa8d04a5fa8f72353ee4a7396b9cd77.png)
66
+
67
+ ![イメージ説明](71dcd5e4632e58eb41765f68609431e5.png)
68
+
69
+
70
+
71
+
64
72
  EUCになっている部分も、文字化けしています。
65
73
  コアサーバー なので、ネットで知ったMySQLの文字コード設定の方法を試すのを躊躇しています。
66
74
  文字コードの設定を変えても、影響ないでしょうか?

6

画像追加とコアサーバー なのでMySQLの文字コード変更行っても大丈夫か確認したいことを追記しました。

2021/04/02 10:23

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -54,4 +54,13 @@
54
54
  ```
55
55
  メール配信機能があるので、PHPがEUC-JPで保存されていて、ソースでもEUC-JPが指定されているのだと推測します。
56
56
 
57
- VIMで文字コードをEUC-JPに指定して開いても、文字化けが直りません。
57
+ VIMで文字コードをEUC-JPに指定して開いても、文字化けが直りません。
58
+
59
+ 画像を追加します。
60
+ ![イメージ説明](8633670db036dd7ed1bfb8f63abb2cce.png)
61
+ utf8 general_ci で照会順序設定されていますが、文字化けしています。
62
+ ![イメージ説明](feb7ad87c4b93fb96c798a88146843f2.png)
63
+
64
+ EUCになっている部分も、文字化けしています。
65
+ コアサーバー なので、ネットで知ったMySQLの文字コード設定の方法を試すのを躊躇しています。
66
+ 文字コードの設定を変えても、影響ないでしょうか?

5

MySQLのコマンドを試した時に、;をつけ忘れたことを説明しました。

2021/04/02 10:19

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -16,6 +16,7 @@
16
16
  ```
17
17
 
18
18
  と試しました。
19
+ この記述では、最後に;が無いため、処理が進まなかったと思われます。
19
20
 
20
21
  サーバーのデータベースのバックアップ機能を使い、保存されていたdumpファイルをダウンロードして確認したら、文字化けしていました。
21
22
 
@@ -25,6 +26,7 @@
25
26
  作られているシステムのソースコードは、mySQLですが、移転先では、mySQLiに関数を変えてアップロードしました。
26
27
  よろしくお願いします。
27
28
 
29
+
28
30
  UTF8以外の照合順序をutf8_general_ciにMyAdminで変更しても、変わりません。
29
31
  使われているPHPのソースが書かれているファイルの文字コードが、ECU-JPです。
30
32
  PHPで書かれているHTMLのヘッダーの文字コード指定が、ECU-JPです。

4

Dumpファイルの一部を掲載します。

2021/04/01 12:54

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -27,4 +27,29 @@
27
27
 
28
28
  UTF8以外の照合順序をutf8_general_ciにMyAdminで変更しても、変わりません。
29
29
  使われているPHPのソースが書かれているファイルの文字コードが、ECU-JPです。
30
- PHPで書かれているHTMLのヘッダーの文字コード指定が、ECU-JPです。
30
+ PHPで書かれているHTMLのヘッダーの文字コード指定が、ECU-JPです。
31
+
32
+
33
+ mysqlで確認しましたので、掲載します。
34
+ ```myslq
35
+ -- phpMyAdmin SQL Dump
36
+ -- version 3.5.2
37
+ -- http://www.phpmyadmin.net
38
+ --
39
+ -- ホスト: localhost
40
+ -- 生成日時: 2021 年 3 月 31 日 11:25
41
+ -- サーバのバージョン: 5.7.32-log
42
+ -- PHP のバージョン: 5.3.29
43
+
44
+ SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
45
+ SET time_zone = "+00:00";
46
+
47
+
48
+ /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
49
+ /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
50
+ /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
51
+ /*!40101 SET NAMES utf8 */;
52
+ ```
53
+ メール配信機能があるので、PHPがEUC-JPで保存されていて、ソースでもEUC-JPが指定されているのだと推測します。
54
+
55
+ VIMで文字コードをEUC-JPに指定して開いても、文字化けが直りません。

3

PHPで書かれているHTMLのヘッダーの文字コード指定が、ECU-JPです。を追記

2021/04/01 11:23

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -26,4 +26,5 @@
26
26
  よろしくお願いします。
27
27
 
28
28
  UTF8以外の照合順序をutf8_general_ciにMyAdminで変更しても、変わりません。
29
- 使われているPHPのソースが書かれているファイルの文字コードが、ECU-JPです。
29
+ 使われているPHPのソースが書かれているファイルの文字コードが、ECU-JPです。
30
+ PHPで書かれているHTMLのヘッダーの文字コード指定が、ECU-JPです。

2

使われているPHPのソースが書かれているファイルの文字コードが、ECU-JPです。を追記

2021/03/31 23:38

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -25,4 +25,5 @@
25
25
  作られているシステムのソースコードは、mySQLですが、移転先では、mySQLiに関数を変えてアップロードしました。
26
26
  よろしくお願いします。
27
27
 
28
- UTF8以外の照合順序をutf8_general_ciにMyAdminで変更しても、変わりません。
28
+ UTF8以外の照合順序をutf8_general_ciにMyAdminで変更しても、変わりません。
29
+ 使われているPHPのソースが書かれているファイルの文字コードが、ECU-JPです。

1

UTF8以外の照合順序をutf8_general_ciにMyAdminで変更しても、変わりません。を追記

2021/03/31 23:35

投稿

creator.M
creator.M

スコア80

title CHANGED
File without changes
body CHANGED
@@ -23,5 +23,6 @@
23
23
  MySQLは、初心者なので、困っています。
24
24
 
25
25
  作られているシステムのソースコードは、mySQLですが、移転先では、mySQLiに関数を変えてアップロードしました。
26
+ よろしくお願いします。
26
27
 
27
- よろくお願いし
28
+ UTF8以外の照合順序をutf8_general_ciにMyAdminで変更ても、変わりせん