2008年08月18日

lHttpRequestについて

llHttpRequestでphp側にデータを送ることができなくて困っています。

http://rpgstats.com/wiki/index.php?title=ExamplellHTTPRequest
のスクリプトとPHPソース
そのまま使っているのですができません(
もちろん 自分のサーバーにURLは変更しましたが)


LSL側
Code:

key requestid; // just to check if we're getting the result we've asked for; all scripts in the same object get the same replies

default
{
touch_start(integer number)
{
requestid = llHTTPRequest("http://my.server.com/my-script.php",
[HTTP_METHOD, "POST",
HTTP_MIMETYPE, "application/x-www-form-urlencoded"],
"parameter1=hello¶meter2=world");
}

http_response(key request_id, integer status, list metadata, string body)
{
if (request_id == requestid)
llWhisper(0, "Web server said: " + body);
}
}




PHP側
Code:

// Only works with PHP compiled as an Apache module
$headers = apache_request_headers();

$objectName = $headers["X-SecondLife-Object-Name"];
$objectKey = $headers["X-SecondLife-Object-Key"];
$ownerKey = $headers["X-SecondLife-Owner-Key"];
$ownerName = $headers["X-SecondLife-Owner-Name"];
$region = $headers["X-SecondLife-Region"];
// and so on for getting all the other variables ...

// get things from $_POST[]
// Naturally enough, if this is empty, you won't get anything
$parameter1 = $_POST["parameter1"];
$parameter2 = $_POST["parameter2"];

echo $ownerName . " just said " . $parameter1 . " " . $parameter2 . "\n";
?>



上記のままでは使えないのでしょうか。
いったい、どのようにすればデータをPHP側に渡すことができるのでしょうか、

目的は
自分のアバター名をPHP側に表示させたいです.

よろしくお願いします。


タグ :LSLPHPHttp

同じカテゴリー(スクリプト関連)の記事画像
オブジェクトのリンクとタッチで開く扉
自動チャットを止めたい
テレポートするとアニメーションが解除される
同じカテゴリー(スクリプト関連)の記事
 テクスチェンジの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 sekki Sautereau  at 11:27 │Comments(5)スクリプト関連

この記事へのコメント
タッチしたアバター名を得るのにllDetectedName(0)がいるはずですよね。

"parameter1=hello&parameter2=world"って何か間違ってません?^^;
http://wiki.secondlife.com/wiki/LlHTTPRequest
Posted by 千尋千尋 at 2008年08月18日 12:40
千尋 様

コメントありがとうございます

デテクトで名前を取得するのは後で
まず、PHPにデータ取得できるようにしたいんです

そのためにサンプル見ているんですが
なかなかもって来れない状態です
Posted by sekki Sautereau at 2008年08月19日 07:33
そうなんですか。それでは、もうちょっと状況を詳しく書いて頂かないと見当つけにくいと思います。
今は hello world って表示されてるんでしょうか?
サーバーが何の反応もしないんだったら、まずはサーバーやPHP、ファイアーウォールとかのセットアップから見直さないとだめですからね^^;
Posted by 千尋千尋 at 2008年08月19日 09:56
こんばんは。

上記スクリプト、自宅のWebサーバ(Apache2/Debian4.0)で動作しました。
但し、あなたのphpスクリプトの先頭に「<?php」が欠けているようですが。。。。

以下のようなメッセージが、ビューアに表示されました。

Object whispers: Web server said: Pastel Flow just said hello world

アバター名(Pastel Flow)はちゃんと、環境変数X-SecondLife-Owner-Nameに入ってますね ^^
Posted by ぱすてるぱすてる at 2008年08月19日 20:00
千尋 様
ぱすてる 様

ありがとうございます。

sakuraのレンタルサーバでPHP使用できるのを
使ってた場合できなかったのですが

別のサーバでまったく同じファイルを使ったらできました

すべてのサーバでできるとは限らないんですね
Posted by sekki Sautereausekki Sautereau at 2008年08月20日 23:19
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。