2011年06月11日

llHTTPRequest()での"&"送信について

スクリプトでのWeb連携を勉強中で、
初めてllHTTPRequest()を使ったのですが、
送信するデータ中に"&"があると、
正しくデータを送ることができずに困っています。

touch_start( integer number )
{
requestid = llHTTPRequest( "http://xxxx/xxxx.php",
[HTTP_METHOD, "POST",
HTTP_MIMETYPE, "application/x-www-form-urlencoded"],
"param=AAAA&BBBB" );
}

サーバ側でparamの値をファイルに書き込んでいるのですが、
上記のソースでは、結果が"AAAA"となって、"&"以降が欠落してしまいます。
送信データが2つある場合、"param1=AAAA¶m2=BBBB"とするようですので
"BBBB"は、2つ目のデータだと認識されているのだと思うのですが、
1つのデータ中に"&"を含みたい場合はどうすれば良いかご教授頂けないでしょうか。

また、"&"以外にも注意する文字があればお教え下さい。
よろしくお願い致します。


同じカテゴリー(スクリプト関連)の記事画像
オブジェクトのリンクとタッチで開く扉
自動チャットを止めたい
テレポートするとアニメーションが解除される
同じカテゴリー(スクリプト関連)の記事
 テクスチェンジのHUDについて (2015-07-01 04:51)
 モール用のプリムカウンターを探しています (2014-11-29 20:09)
 連続するアニメーションの処理 (2014-08-24 03:23)
 オブジェクトの上にフローティングテキストを出す。 (2014-08-22 16:46)
 チャットログの盗聴について (2014-02-03 03:43)
 椅子に座った後で位置調整できるスクリプト (2013-03-24 16:37)

Posted by ねも  at 10:39 │Comments(4)スクリプト関連

この記事へのコメント
よくわかんないけど誰も答えないのでw

送りたいデータ全体をllEscapeURLで変換して送り、受け取ったらPHPの関数で元に戻すんじゃないの。
PHPのことは良く分からんけど関数はrawurldecodeを使うのかな。
Posted by 名前は必須です at 2011年06月12日 09:48
なるほど、llEscapeURLを使うんですね。
今試したところ、問題なく"&"を含むデータを送信出来ました。
PHP側ではrawurldecodeを使っても、
使わなくても結果は同じになりました。
PHPについては、勉強し始めたばかりなので、もう少し調べてみます。
助かりました。ありがとうございました。
Posted by ねも at 2011年06月12日 11:30
興味があったので、LSLで受信してみました。
key URL_REC;
default{
state_entry(){
URL_REC= llRequestURL();
}
http_request(key id, string method, string body){
if(URL_REC==id){
if(method==URL_REQUEST_GRANTED){
llSay(0,"url="+body);
return;
}
}else{
llSay(0,"body:"+body);
}
}
}
結果は、Object: body:param=AAAA&BBBBでした。
ご参考に^^
Posted by 暇人 at 2011年06月14日 22:23
結果は、Object: body:param=AAAA&BBBBでした。
ご参考に^^
Posted by gucci outlet at 2014年04月21日 19:30
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。