みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になっております。
「Webビューア」
<body>
<form action="fmp://ipaddress/database">
<input type="text" name="$param1">
<input type="submit">
<input type="hidden" name="script" value="websubmit">
</form>
</body>「スクリプト」
カスタムダイアログを表示 [$param1]Webビューアからformのsubmitでfmpプロトコルを使ってパラメータを渡そうとしています。
入力内容が英語の場合は問題なく変数$param1に渡されるのですが、
日本語を入力すると文字化けしてしまいます。
文字化けさせないにはどのようにしたら良いでしょうか?
FMProA13
Win7
以下の様なカンジでイケました。
Form送信は、URLエンコードしているはず?なのですが、よく分かりませんね。
JavaScriptでいったんURLエンコードしてから送信すれば文字化けは、解消されました。
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
function fire(){
var param=document.getElementById("param").value;
document.getElementById("enc_param").value=encodeURI(param);
document.form.submit();
}
</script>
</head>
<body>
<form name="form" action="fmp://ipaddress/database" method="get">
<input type="text" id="param" value="あいうえお">
<input type="hidden" id="enc_param" name="$param1">
<input type="hidden" name="script" value="websubmit">
<input type="button" onclick="javascript:fire();" value="ENC送信"></input>
</form>
</body></html>Offline
> Form送信は、URLエンコードしているはず?なのですが、よく分かりませんね。
環境無いのでただの傍観者ですが、変テコですね?
fmp:でForm送信の例示ガイドを見たこと無いので、FMはgetだけしか受信できないのかも?
Form送信でもmethod="Get"として解されるため、urlエンコードが必要なのかな、
Offline
プロトコルがhttpじゃないので、GETもPOSTもありません。URL自体を受け取るだけです。
コマンドラインでやるときはエンコードなしでよかったはずだけど
Offline
返信有難うございます。
こちらでも試してみましたが、結局javascriptで小細工するしか方法が見つかりませんでした。
var param = "";
//各パラメータを収集
location.href = "fmp://ipaddress/database?" + param;これだとproでもgoでも使えました。
WebビューアはFileMakerよりも表現力が優れているのは良いのですが、
連携が難しいのでFM社になんとかしてもらいたいところです。
barikanさんのHTMLはエンコードを明示してませんけど、何ですか?data:じゃなくWEBサーバがあるんですよね?
UNICODEのまま渡せばOS側でエンコードする(かそのまま16ビットでFMに渡る)ということなのかな。
Webビューアでdata:text/htmlを使いました。
data:だと、Windowsでは実際はfile:になってるので、ますますよくわからない。
HTMLの規格ではFORMのACTIONで
HTTPスキームURI以外の値の場合のユーザエージェントの動作は、定義しない
となってるみたいです。
submitするよりhrefを書き換える方が安心かも。
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 555.64 KiB (Peak: 579.14 KiB) ]