喫茶XRAYトップページ

[スレッド全体
]

[11951] Re7:某掲示板の文字化け返信 削除
2018/6/18 (月) 18:57:11 taka
▼ Mr.XRAYさん
> taka さんの
>
> > メモ帳で一度ANSIを指定して保存して、閉じて開いてコピペして
> > 投稿すれば文字化けしないような気もします。
>
> がビンゴということで Q and A の管理人の方にメールしました.
> 今見たら,既にスレッドの最後の投稿欄の下に追加されていました.
> taka さん,福士さん,そして過去にも私のくだらない話に付き合っていただいた
> 皆さん,ありがとうございます.
> おかげ様でモヤモヤが少し,いやかなりスッキリしました.
>
> なお,書込者 ID は文字化けしないよう対処したそうです.
> ということは,もしかしたら Shift-JIS にしなくても文字化けしなくなったりして...

テストフォームを作って試したところ
unicodeなどの文字は、自動でブラウザがエスケープして &#コード番号; で送信することがわかりました。
なので、なぜ、コピペで直るのか? ちょっとモヤモヤしてます。

cgi側での簡単な対処として
post値を全部foreachで
シフトジス → utf-8 →  シフトジス
に変換すれば、
(利用している変換ライブラリによりますが)
投稿者のメモ帳への保存作業はいらなくなるかもしれないです。



[11953] Re8:某掲示板の文字化け返信 削除
2018/6/18 (月) 19:08:55 Mr.XRAY
▼ takaさん

> unicodeなどの文字は、自動でブラウザがエスケープしてコード番号で送信することがわかりました。
> なので、なぜ、コピペで直るのか? ちょっとモヤモヤしてます。


taka さんが文字化けしなくなるかも知れないと言ったのにぃ (笑)
なぜと言われても.
UTF-16 のコードポイントを UTF-8 に変換する過程の現象たとは思うのですが.

> cgi側での簡単な対処として
> post値を全部foreachで
> シフトジス → utf-8 →  シフトジス
> に変換すれば、


そうですね.少し様子を見て提案することにしますか.
と言っても,メールにこのスレッドのこと書いてしまっていますが.ハハハッ


[11954] Re9:某掲示板の文字化け返信 削除
2018/6/18 (月) 20:08:32 taka
▼ Mr.XRAYさん
> ▼ takaさん
>
> > unicodeなどの文字は、自動でブラウザがエスケープしてコード番号で送信することがわかりました。
> > なので、なぜ、コピペで直るのか? ちょっとモヤモヤしてます。
>
> taka さんが文字化けしなくなるかも知れないと言ったのにぃ (笑)
> なぜと言われても.
> UTF-16 のコードポイントを UTF-8 に変換する過程の現象たとは思うのですが.
>
> > cgi側での簡単な対処として
> > post値を全部foreachで
> > シフトジス → utf-8 →  シフトジス
> > に変換すれば、
>
> そうですね.少し様子を見て提案することにしますか.
> と言っても,メールにこのスレッドのこと書いてしまっていますが.ハハハッ


もしかすると掲示板が古そうなので
post変数などをデコードする処理を自分で書いている可能性があり、
そこで文字化けが発生している場合は
CGIライブラリを呼び出して デコードされたパラメータを参照するように書き換えると
直るかと思います。
use CGI;
my $cgi = new CGI;
# $cgi->param("name") # post,getの区別はない


追記
 perl 文字化け Shift_JIS
 ツ  文字化け
でたくさんヒットするので、
確実に再現する方法を見つけないと原因個所は特定できないでしょうね。


[11955] Re10:某掲示板の文字化け返信 削除
2018/6/18 (月) 22:46:26 Mr.XRAY
▼ takaさん
 
> もしかすると掲示板が古そうなので

かなり昔から設置している掲示板ですから,そう言えないこともないですね.
CGI そのものは UTF-8 でも,対象が Windows 上で使用するブラウザだった
わけですから,Shift-JIS が対象ということだったと思います.
全面的に Unicode になったのは Windows Vista ですから.
Windows XP も意識的に操作すれば Unicode も使用できましたが.


[11957] Re9:某掲示板の文字化け返信 削除
2018/6/18 (月) 22:57:39 taka
▼ Mr.XRAYさん
> そうですね.少し様子を見て提案することにしますか.
> と言っても,メールにこのスレッドのこと書いてしまっていますが.ハハハッ

ダウンロードして
バイナリエディタで見ると
[]の部分は ヌルバイトを含むバイナリデータであるとわかりましたので
そこが悪さをしている可能性がありますね。

新しい投稿から
[]の部分は直ったようなので様子見ですね。


[11958] Re10:某掲示板の文字化け返信 削除
2018/6/18 (月) 23:25:26 Mr.XRAY
▼ takaさん

> バイナリエディタで見ると
> []の部分は ヌルバイトを含むバイナリデータであるとわかりましたので
> そこが悪さをしている可能性がありますね。


なるほど.そういうことなのか.

> []の部分は直ったようなので様子見ですね。

何かうまく逃げたような (笑)
でも新しい方がいいかも.前は記号みたいのにこだわりがあったのかもですね.


[11959] Re11:某掲示板の文字化け返信 削除
2018/6/19 (火) 05:52:18 taka
▼ Mr.XRAYさん
> ▼ takaさん
>
> > バイナリエディタで見ると
> > []の部分は ヌルバイトを含むバイナリデータであるとわかりましたので
> > そこが悪さをしている可能性がありますね。
>
> なるほど.そういうことなのか.
>
> > []の部分は直ったようなので様子見ですね。
>
> 何かうまく逃げたような (笑)
> でも新しい方がいいかも.前は記号みたいのにこだわりがあったのかもですね.


・ファイル入出力で文字コードをしていないと自動でエンコード/デコードを受けるとか
・\ がはいっていると化けるとか
・古いjcode使っていると化けるとか
・jcodeをバージョンアップすると化けるとか
・perlをバージョンアップすると化けるとか
・perlで文字化けすると ツ ばかりの文字になるとか
いろんな情報があるようなので、ソースコードがない状態で推測するのは厳しいですね。



[▼次のスレッド]
INCM/CMT
Cyclamen v3.82