質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

6259閲覧

XAMMPでHTMLファイルの文字化けを直したい

takochi

総合スコア10

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/04/30 16:15

XAMMPのhtdocs folder内に[php_test]フォルダを作成して、その中に[from.html]を
作成しました。
HTTP://localhost/php_test/で検索して、from.htmlファイルを開くと文字化けしてしまいます。

例)
蜈・蜉帙ヵ繧ゥ繝シ繝
譁咏炊蜷�: 繧ォ繝・ざ繝ェ:
驕ク謚槭@縺ヲ縺上□縺輔>
蜥碁」�
荳ュ闖ッ

なんとか解決できないでしょうか?
それともHTMLファイルはXAMPPでは正常に動かないのでしょうか?
教えて頂きたく質問いたしました。
ご回答よろしくお願いします。

【試したこと】
・調べて文字コードがApache,Mysql,php.iniで違うとのことで設定した。

【apache】
設定前
;mbstring.language = Japanese
;mbstring.internal_encoding = EUC-JP
;mbstring.http_input = auto
;mbstring.http_output = SJIS
;mbstring.encoding_translation = Off
;mbstring.detect_order = auto
;mbstring.substitute_character = none
;mbstring.func_overload = 0


設定後
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
mbstring.func_overload = 0

【Mysql】

設定後
シャープシャープ UTF 8 Settings
init-connect=SET NAMES utf8
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
character_sets-dir="C:/xampp/mysql/share/charsets"

[client]
シャープ password = your_password
port = 3306
socket = "C:/xampp/mysql/mysql.sock"
default-character-set = utf8

[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

【php.ini】
[default character]
; PHP's default character set is set to empty.
; http://php.net/default-charset
;default_charset = "iso-8859-1"
default_charset = UTF-8

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone=Europe/Berlin
date.timezone=Asia/Tokyo

[mbstring]
; language for internal character representation.
; http://php.net/mbstring.language
;mbstring.language = Japanese
mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
; http://php.net/mbstring.internal-encoding
;mbstring.internal_encoding = EUC-JP
mbstring.internal_encoding = UTF-8

長々とすみません。
現在のapacheとmysqlとphp.iniの設定で変更した部分を記載しました。

何卒宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

おはようございます。そもそもHTMLファイルをUTF-8で保存する。
単純なHTMLをブラウザで開いてみて文字化けするかどうかだと思います。
この時点でPHPファイルを呼び出していないのでXAMPPの設定・PHPの設定
をみてもあまり変化がないかと・・。

ただし

前の方の

HTML

1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4<meta_charset="utf-8">

の部分でよろしいかとおもいますが・・。

投稿2020/04/30 19:25

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takochi

2020/05/01 02:52

ありがとうございます。 HTMLファイルのみブラウザで開いた所、文字化けしないで表示されました。
退会済みユーザー

退会済みユーザー

2020/05/01 03:00

わたしもテスト用にxamppを使っていますがUTF-8で保存するようになってから問題なく表示されます。 あとは、Webブラウザのデフォルトエンコードを確かめてみるとかでしょうか・・。 Shift-JIS、JIS、EUC-JPのいずれかでないかなど。 (HTMLファイルのみで文字化けしないのは標準のブラウザと開発用のブラウザの設定が違うとか?? あまりくわしくないのでわかりませんが)
退会済みユーザー

退会済みユーザー

2020/05/01 03:12

ブラウザが古い場合、HTML5に対応していないため下記の記述が必要なようです・・。 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
takochi

2020/05/01 03:16

調べて頂きありがとうございます。 VScodeで試した所、正常に動きました。
guest

0

ベストアンサー

(書いてなければ)以下を加えてみてはどうですか?

HTML

1<html> 2<head> 3 ... 4 <meta charset="UTF-8"> 5 ... 6</head> 7...

投稿2020/04/30 17:40

編集2020/04/30 17:42
mktia

総合スコア110

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takochi

2020/04/30 17:52

ご回答ありがとうございます。 確認したところ、その部分の記述がありました。 他に可能性があれば教えて頂けると幸いです。 htmlの内容を記載いたします。 <!DOCTYPE html> <html lang="ja"> <head> <meta_charset="utf-8"> <title>入力フォーム</title> </head> <body> 入力フォーム<br> <form method="post" action="receive.php"> 料理名:<input type="text" name="recipe name" required> <input type="submit" value="送信"> カテゴリ: <select_name = "kategory"> <option value = " ">選択してください</option> <option value = "1">和食</option> <option value = "2">中華</option> <option value = "3">洋食</option> </select> </form> </body> </html>
mktia

2020/04/30 18:03

meta charset の部分にアンダーバーが入っているので、取り除くと良いかもしれません。
takochi

2020/05/01 02:51

ありがとうございます。 アンダーバーを取り除いたのですが、文字化けしてしまいました。
mktia

2020/05/01 02:56

となると、ファイル自体が UTF-8 以外の文字コードで書かれている可能性も考えられます。 VScode 等のエディタで開くとファイルの文字コードが表示できるので確認してみてください。 (メモ帳等は不可)
takochi

2020/05/01 03:17

VScodeで試した所、正常に動きました。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問