掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
コンソール形式CGIの文字化けを解消するには? (ID:49466)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
コンソール形式CGIの文字化けを解消するには? はじめまして、お世話になります。 以前、Delphi6で作成したコンソールアプリ形式のCGIプログラムを Delphi10.2へ移植したところ、HTMLフォームからPOSTした全角文字が 文字化けしてしまい困っています。 解決する方法を教えていただけないでしょうか。 ■開発環境 Delphi10.2 WindowsServer2016 Apache2.4 ■テストソース(testcgi.dpr) program testcgi; {$APPTYPE CONSOLE} uses SysUtils; {$E cgi} var C : AnsiChar; i : integer; data : AnsiString; begin //HTMLフォームから送信されたデータの取得 for i := 1 to StrToIntDef(GetEnvironmentVariable('CONTENT_LENGTH'), 0) do begin Read(C); data := data + C; end; Writeln('Content-type: text/html'); Writeln(''); Writeln('<!DOCTYPE html>'); Writeln('<html>'); Writeln('<head>'); Writeln('<meta charset="Shift_JIS">'); Writeln('</head>'); Writeln('<body>'); Writeln('POST DATA : ' + data); //取得したフォームデータをそのまま表示 Writeln('</body>'); Writeln('</html>'); end. ■HTMLフォーム <!DOCTYPE html> <html> <head> <meta charset="Shift_JIS"> </head> <body> <form action="/cgi-bin/testcgi.cgi" method="post"> <input type="text" name="data" value="データ"><br /> <input name="submit" type="submit" value="submit"> </form> </body> </html> ■実行結果 入力文字:データ →%83f%81%5B%83%5E(URLデコード→%83fータ) 入力文字:フォーム →%83t%83H%81%5B%83%80(URLデコード→%83t%83Hーム)
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.