私はかなり定期的にデータを投稿しています。私はローカルサイドでVB用に開発されたコードとサーバー側で古典的なASPのセットを持っています。これでPHPへのservsideを変更したいと思います。ローカルプログラムを使用したphpページへの投稿
元のコードはxmlHTTPオブジェクトを使用してXMLデータをaspウェブページに投稿し、魅力的に機能します。
XML ADOストリームオブジェクトとして投稿しているXMLデータについて、私が何をしているかについてもっと学んだことが分かります。
ASPはこの罰金を読み取ります。
私はPHPを使うためにサーバサイドのコードを再デーブルしたかったのです。私は、次のコードをしようとしている:
<?php
$arq = file_get_contents('php://input');
echo strlen($arq);
?>
は、これは正しい文字列の長さを返しますが、私は、文字列をエコーたり、物事を検索する場合、私は何も戻って来ない文字列であることを知っています。
この生の投稿データはバイナリ形式なので、正しい形式でデータが変換されていないことは間違いありません。
私はこれがADOストリームオブジェクトを使用してデータをポストしているのと同じようにわかりました。 PHPはヘッダを読み込み、それが一定の長さを持っていることを認識しますが、残りのデータをどのように扱うかを認識しません。
fread
,fopen
などのさまざまなコマンドを試しました。生の投稿データが有効になっています。
さらに検索すると、問題は受信投稿の形式であることが明らかになりました。
誰もストリームデータを処理する方法の提案はありますか?
質問する前に私はget_stream_contentsも試しました。それは戻って来て、それがストリームの任意の値に達することができないと言います。
おかげ(あなたがtestmycode.phpにデータを掲載しているページ)と呼ばれているPHPのページで
本当にありません。 post変数にvar_dumpを実行すると、その変数は空になります。 問題は私が作ったよりもはるかに単純であることが分かりました。 送信されるデータはXML形式です。私はそれを単純なテキストに変更したとき、私は文字列を見ることができ、すべてが順調です。だから、唯一の問題は、文字列を表示可能なxml形式に変換することです。 –