HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0609
xariaHSP → PHPへ変数内容を送信4解決


xaria

リンク

2013/6/9(Sun) 01:27:06|NO.54727

HSPからPHPへ変数の内容を送りたいのですが
下記がうまく動作しません。
変数[test]がうまく送信されてないみたいなのですが原因が分かりません。

【HSP側】

#include "hspsock.as" sdim get,1000 /* 送信したい変数 */ test = "123456789" sockopen 0, "localhost", 80 sockput "GET /index.php HTTP/1.0 \n\n", 0 sockput "Host: localhost\r\n" sockput "Content-Length: "+strlen(test)+"\r\n" sockput "test="+test, 0 ;testを記述 sockget get,1000,0 sockclose 0 dialog get

【PHP側※localhost/index.php】

<?php header('Content - type: text/html; charset=UTF-8'); ?> <?php echo "変数testの中身は"; $test = $_GET['test']; echo $test; ?>

HSPだけの質問ではないので申し訳ないですが、是非お願い致します。



この記事に返信する


inovia

リンク

2013/6/9(Sun) 01:42:42|NO.54728

試してないけど、解決するには1つ目は送信をPOSTにしてしまう方法。
PHP側の

$test = $_GET['test'];


$test = $_POST['test'];
に変え、HSP側の

sockput "GET /index.php HTTP/1.0 \n\n", 0


sockput "POST /index.php HTTP/1.0 \n\n", 0
に変えれば、うまくいくのでは?

2つ目はGETにする方法で、

sockput "test="+test, 0 ;testを記述
を削除して

sockput "GET /index.php?test="+test+" HTTP/1.0 \n\n", 0
に変更する。

どちらかでうまくいくはず。



xaria

リンク

2013/6/9(Sun) 01:55:52|NO.54729

inovia様>>
うまくいきました!!!

PHP側もGETで

sockput "GET /index.php?test="+test+" HTTP/1.0 \n\n", 0 </php> これでいけました! 3日悩んでたのが嘘のように今テンションあがりっぱなしです! 本当にありがとうございました!



inovia

リンク

2013/6/9(Sun) 02:01:00|NO.54730

あと、改行コードも気になります。
HSP上では、
\r = 0D (CR)
\n = 0D 0A (CRLF)
となるため、複数の改行コードが混在しています。
C言語だと、
\r = 0D (CR)
\n = 0A (LF)
\r\n = 0D 0A (CRLF)
なんですけども。
\r\nとなっているところを\nに直しておいた方が良いです。


#include "hspsock.as" sdim get,1000 /* 送信したい変数 */ test = "123456789" sockopen 0, "localhost", 80 sockput "GET /index.php?test="+test+" HTTP/1.0 \n", 0 sockput "Host: localhost\n" sockput "Content-Length: "+strlen(test)+"\n\n" sockget get,1000,0 sockclose 0 dialog get



xaria

リンク

2013/6/9(Sun) 14:48:16|NO.54745

inovia様>>
ありがとうございます!
拾ったサンプルが\rだったので必須かと思ってました!
確かに拾ったサンプルはC用だった気がします・・
ありがとうございましたー!



ONION software Copyright 1997-2023(c) All rights reserved.