ホームページ  >  記事  >  バックエンド開発  >  thinkphp+iis6.0+win2003 検証コードが文字化けする

thinkphp+iis6.0+win2003 検証コードが文字化けする

WBOY
WBOYオリジナル
2016-06-23 13:38:36984ブラウズ


この検証コードは thinkphp には付属していません。Web サイトはローカル コンピューター (win8.1) およびその他の win2003 では正常に表示されますが、サーバー A に転送されるとこのエラーが発生します。サーバー A は以前 dz フォーラム 5.2 を使用していました。 17 php バージョン、これをトラブルシューティングするにはどうすればよいですか?アドバイスをお願いします


ディスカッション (解決策) に返信します

画像出力の前にこの文を追加します

header('content-type:image/gif'); 画像の前にこの文を追加しますOutput
header ('content-type:image/gif');

ありがとうございます、追加した後も同じエラーが発生します。php.ini ファイルの設定が原因ですか?

このプログラムは他のサーバーでも正常に動作します


echobase64_encode(file_get_contents('検証コードプログラムのurl'));

結果を投稿します

ヘッダー文をコメントアウトしてエラーを報告しますか?


echo Base64_encode(file_get_contents('検証コード プログラムの URL'));

結果を投稿する

77u/R0lGODdhMgAWAKEAAN//fWRkZEFodQAAACwAAAAAMgAWAAACloyPqSmy/4CctAIhMcXa+mp8X1c1kylaYZpy F8 mqQUyjtHyXJbyL65Wz2IRD0OzUSCarNG4vs9xMfp6mxvpE+o6jKwmbLVKoQOjGexabP2Ttrqg UvrZVHmoYr9N7/PVLPcfG5VeG15GXFmV0JnL3pRhEBQgFBzmCE9Q1eYKZSYSoFCo6SlpqmtWZ 4Rm4GuAAAcvwGgtRAAA7

の BOM ヘッダーを削除してください検証コードプログラム

<?php$s = base64_decode('77u/R0lGODdhMgAWAKEAAN//fWRkZEFodQAAACwAAAAAMgAWAAACloyPqSmy/4CctAIhMcXa+mp8X1c1kylaYZpyF8mqQUyjtHyXJbyL65Wz2IRD0OzUSCaRNg4vs9xMfp6mxvpE+o6jKwmbLVKoQOjGexabP2TtrqgUvrZVHmoYr9N7/PVLPcfG5VeG15GXFmV0JnL3pRhEBQgFBzmCE9Q1eYKZSYSoFCo6SlpqmtWZ4Rm4GuAAAcvwGgtRAAA7');echo substr($s, 3);

他のマシンでは正しいかどうかについては、何の意味もありません

あなたのプログラムは、サーバー A にアップロードする前 (後) にメモ帳で編集されました

php.ini の設定が間違っていますか?
extension=php_gd2.dll が有効になりました
画像のエラーは、index.php?m=Public&a=verify などのアドレスに直接アクセスしたところ、文字化けしたコードが表示されたことです
このアドレスにローカルでアクセスすると、画像認証コードが表示されました。と表示されます


検証コードプログラムの BOM ヘッダーを削除してください

<?php$s = base64_decode('77u/R0lGODdhMgAWAKEAAN//fWRkZEFodQAAACwAAAAAMgAWAAACloyPqSmy/4CctAIhMcXa+mp8X1c1kylaYZpyF8mqQUyjtHyXJbyL65Wz2IRD0OzUSCaRNg4vs9xMfp6mxvpE+o6jKwmbLVKoQOjGexabP2TtrqgUvrZVHmoYr9N7/PVLPcfG5VeG15GXFmV0JnL3pRhEBQgFBzmCE9Q1eYKZSYSoFCo6SlpqmtWZ4Rm4GuAAAcvwGgtRAAA7');echo substr($s, 3);

他のマシンで正しいかどうかは、何の意味もありません

あなたのプログラムは、アップロードする前(後)にメモ帳で編集されましたサーバー A


UE を使用して、index.php、Image.class.php、login.html、および PublicAction.class.php を BOM なしの UTF-8 として保存しましたが、それでもこの間違いを犯してしまいました。
崩壊

Lao Xu はすでに BOM ヘッダーを削除すると言っています。BOM ヘッダーが何なのかわからない場合は、Baidu で検索してください

$s = base64_decode('77u/R0lGODdhMgAWAKEAAN//fWRkZEFodQAAACwAAAAAMgAWAAACloyPqSmy/4CctAIhMcXa+mp8X1c1kylaYZpyF8mqQUyjtHyXJbyL65Wz2IRD0OzUSCaRNg4vs9xMfp6mxvpE+o6jKwmbLVKoQOjGexabP2TtrqgUvrZVHmoYr9N7/PVLPcfG5VeG15GXFmV0JnL3pRhEBQgFBzmCE9Q1eYKZSYSoFCo6SlpqmtWZ4Rm4GuAAAcvwGgtRAAA7');echo bin2hex($s);
efbbbf47494638376132001600a10000dfff7d6464644168750000002c00...
この efbbb f は utf-8 の BOM ヘッダーです
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。