プロが教える店舗&オフィスのセキュリティ対策術

$Host= 'abc.hogehoge.co.jp';
$Page= "/test_order.cgi?pass=1234&id=1234'
$Addr= (gethostbyname($Host))[4];
$Name= pack("S n a4 x8", 2, 443, $Addr);
socket(S, 2, 1, 0);
connect(S, $Name);


binmode(S);
select(S);
$| = 1;

select(stdout);
print S "GET $Page HTTP/1.0\r\n\r\n";
$Data= '';
while (<S>){$Data= $_;}
close(S);
print"$Data";

現在ある決済システムを組み込もうとしております。
上のように外部ホストのアクセスしてパスワードやID、その他あるのですがそれで接続していてもどうにも$Dataに出力されません。
print S "GET $Page HTTP/1.0\r\n\r\n";
とありますが外部ファイルはhtmlファイルではありません。たんなるテキスト文字が出力されるはずです。
直接ブラウザに
https://abc.hogehoge.co.jp/test_order.cgi?pass=1 …
とたたくとテキストが出力されます。
なにかまちがっているのでしょうか?

恐れ入りますがご教授お願いします

A 回答 (1件)

while (<S>){ $Data = $_; }




while (<S>){ print; }
とすれば表示されます。
こんだけ書ける人なら、後は判りますね。
(と言うかお茶でも飲んで落ち着けばご自分で判ったかと?)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!