AJAX を使用して実装すると、エンコーディング (GBK、UTF8) が異なる複数のプロジェクトが POST/GET を通じてフォーム データを要約します。最終的な実装では、同じページを使用して、異なるエンコーディング (GBK、UTF8) のフォームを受信します。これは、JS コレクション プロジェクトに特に適しています。
1. フォーム項目 1 GBK エンコード形式
ユーザー収集フォームは GBK エンコードされており、GET/POST で送信されたデータも処理なしで GBK 形式です
テストアドレス: http://www.miaoqiyuan.cn/products/anycharset/gbkForm.html
2. フォーム項目 2 UTF8 エンコード形式 (別のドメイン名でも可能)
ユーザー収集フォームは UTF8 でエンコードされており、GET/POST を通じて送信されたデータも UTF8 形式です。フォーム項目 1 でプログラムが受信したものは文字化けしたコードです
テスト アドレス (文字化けしたコードを送信する前に)変更): http://www.miaoqiyuan.cn/products/anycharset/utf8Form.html
ページのエンコードを変更する必要はありません。フォームのアクション アドレスを変更し、name= を追加するだけで済みます。 ConvertCallBack" value="ProjectA/FormGBK", name="ConvertItems" value=”name,qq,bb” だけで十分です。ページ
エンコーディング設定を調整する必要はなく、コンバーターが動作します。自動的に。
<form action="convert/utf8.asp"...<input name="ConvertCallBack" value="ProjectA/FormGBK"><input name="ConvertItems" value="name,qq,address"/><!-- 根据表单实际情况,修改表单项目 -->
テストアドレス (変更後): http://www.miaoqiyuan.cn/products/anycharset/utf8FormRepair.html
3. フォーム項目 3。 GBK エンコード形式 (別のドメイン名でも可能)
は、パラメーターが Form 1
の標準に従って記述されている限り、影響しません。
テスト アドレス: http://www. miaoqiyuan.cn/products/anycharset/otherForm.html
すべてのテスト パッケージのダウンロード アドレス: http://www.miaoqiyuan.cn/products/anycharset/anycharset.rar
<% @codepage=936 %><% CallBack = Server.Htmlencode(Request("ConvertCallBack")) Items = Split(Request("ConvertItems"),",") if len(request.form) > 0 then method = "POST" else method = "GET" end if%><!DOCTYPE html><html lang="zh-CN"><head><meta charset="GB2312"><script src="http://www.miaoqiyuan.cn/wp-includes/js/jquery/jquery.js"></script></head><body><form action="<%=CallBack%>" method="<%=method%>" id="AutoPOST"><% for each Item in Items if trim(Item) <> "" then Item = Server.Htmlencode(Item)%><% = Item %> : <textarea name="<% = Item %>" id="<% = Item %>"></textarea><br /><script>jQuery.post("utf8_convert.asp?MiaoQiYuanAutoConvertItem=<%=Item%>&<%=Request.QueryString%>","<%=Request.Form%>",function(res){ jQuery("#<% = Item %>").val(res);});</script><% end if next%><button type="submit">Waiting...</button><script type="text/javascript">setTimeout(function(){ jQuery("#AutoPOST").submit();},200);</script></body></html>
<% @codepage=65001 %><% function NotXSS(html) NotXSS = html NotXSS = replace(NotXSS, "<", "<") NotXSS = replace(NotXSS, ">", ">") NotXSS = replace(NotXSS, """", ""e;") end function '防止参数冲突,使用了 MiaoQiYuanAutoConvertItem Response.Write NotXSS(Request(Request.QueryString("MiaoQiYuanAutoConvertItem")))%>