
PHPで作成したWebサイトをブロバイダーのサーバーにアップして表示すると文字化けします。
ローカル環境では、php.iniの設定で、エンコードをUTF-8としていますが、「サーバー環境はWindowsサーバをベースとしており、WEBサーバはIIS(7.0)となるため、各サイトごとにphp.iniファイルを設定することはできない。
(サーバ内にアップロードされてもPHPから読ませることはできません。)」 とブロバイダに言われました。
どうしたらよいのでしょうか?
ちなみに、ローカル側のエンコードをjisにすれば問題ないのかもしれませんが、いまいちphp.iniの設定に自身がないのです。
今の状態は以下の通りですが、どこをどう変更すればよいのでしょうか?
よろしくお願いします。
****************************************************
default_charset = "UTF-8" 出力文字コード
mbstring.internal_encoding = UTF-8 PHP内部の文字コード
mbstring.http_input = auto HTTP入力の文字コード
mbstring.http_output = pass HTTP出力の文字コード
mbstring.encoding_translation = Off HTTP入力の文字コードの自動変換
****************************************************
No.3ベストアンサー
- 回答日時:
単純に、webサーバがデフォルトで送出する、Content-Typeヘッダの文字コードがUTF-8でない、とかそういうことではないですか?
以下の二点、試してみてはどうでしょう。
・コンテンツを表示擦る前に、headerタグで文字コードを指定する。
<?php header('Content-Type: text/html; charset=UTF-8')?>
・HTMLタグでmetaで指定
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
※titleタグなど日本語が出てくる前に指定する。
どうでしょう。
No.2
- 回答日時:
実際にスクリプトを記述したファイルの文字コードが「mbstring.internal_encoding」で指定したものと同じであるか、確認してみてください。
うっかりシフトJISで保存していた、ということはないでしょうか。また「mbstring.encoding_translation」についてはスクリプト内で設定することは出来ないと思います。
根気強く頑張ってください。
参考URL:http://www.php.net/manual/ja/configuration.chang …
samchayさん:
何度もありがとうございます。
metaの設定で、とりあえず何とかなりました。
これから、もっと本格的なコーディングに入ると、さらなる難所がやってきそうですが、またよろしくお願いします。
No.1
- 回答日時:
設定ファイルにアクセスできない場合、ご自身のスクリプト内で関連項目を設定することになります。
設定には「ini_set()」関数が利用できます。変更可能な範囲が「PHP_INI_ALL」となっているものはスクリプト内で変更可能ですので、次のようにして設定します。
ini_set('mbstring.internal_encoding', 'UTF-8');
「default_charset」も同様に設定できますが、これは「header()」関数を用いて上書きすることも可能です。
まずはローカルの環境と同じように設定し、様子を見ては如何でしょうか。
参考URL:http://www.php.net/manual/ja/mbstring.configurat …
samchaysann:
ご回答、ありがとうございます。
私もini_setだと思い、以下のように設定しましたが、やはりダメでした。記述が間違っている、若しくは足りないのでしょうか?
エラーにはなりませんが、文字化けです。
<?php ini_set('default_charset','UTF-8');
ini_set('mbstring.internal_encoding','UTF-8');
ini_set('mbstring.http_input','auto');
ini_set('mbstring.http_output','pass');
ini_set('mbstring.encoding_translation','off');
print('テスト');
?>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP phpのメールフォームの完了画面でメール受信のコードを書いています。 1 2023/05/31 11:39
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Windows 8 メモ帳による文字コード変換 2 2022/09/01 18:38
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
サーバーにアップすると文字化...
-
携帯の文字化け
-
phpでcsvの文字化けを直す方法...
-
なぜ文字化けしないのでしょうか?
-
phpファイルで文字化け
-
PHP time()に関しての質問です
-
$_SESSION 有効期限をブラウザ...
-
Makefile.inとMakefile.am
-
リンクされているかの確認
-
wordpressの記事をカスタマイズ...
-
OOPの実践の入門に良いサイトは...
-
GETの値について
-
インタフェースとは
-
PHPをインストールしてみた...
-
PHPで特定のURLにジャンプす...
-
ファイルが開けない問題について
-
PHPを使ったリダイレクトを教え...
-
PHP で各種設定ファイルをイン...
-
PHPのif文でその処理を途中で抜...
-
php5のフォーム
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームからPOSTされた値をXML...
-
PHPExcelバッファへの書き込み...
-
文字コードの問題??
-
下記のように文字化けするので...
-
ファイルの文字コードを調べる...
-
EclEmmaレポートのエクスポート...
-
自作cgiのページがIE10で文字化...
-
IIS5.1です。PHPをブラウザで開...
-
phpフォームで文字化け
-
ホームページでの文字化けにつ...
-
[HTML-PHP]あるPHPファイルだけ...
-
PHPでセッション導入後に初めて...
-
フォーム入力のエンコーディン...
-
PHP time()に関しての質問です
-
別のサーバーのテキストファイ...
-
phpログファイルの文字化けにつ...
-
mysql→EUC-JP、php→UTF-8の時の...
-
DBから取得したデータについて
-
文字化けについて
-
PHP+MySQLの文字化けで悩んでい...
おすすめ情報