2011-01-30 4 views
0

私は決してPHPやhttpの投稿や何かで作業したことはありません。HTTPポストの正しい値のための助けが必要です

私は必要なものをより正確に説明することができます。

http://nycserv.nyc.gov/NYCServWeb/NYCSERVMain

は、だから、私はそれが「消費者の公正な違反」と言うところの隣に「GO」ボタンを押したかのように結果のページの情報を取得します何かを書きたいです。グーグルの束をした後、私はHTTPの投稿をすると思いますので、私はPHPとCURlを使いこなしています。これは私が思いついたコードですが、実際に投稿するはずの値はわかりません。

<?php 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://nycserv.nyc.gov/NYCServWeb/NYCSERVMain"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_POST, true); 

$data = array(
    'dcadropdownmenu.name' => 'javascript:consumerAffairsViolationsQuerySetup("GET_CONSUMER_AFFAIRS_VIOLATION_SEARCH_QUERY_SETUP")'); 

curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
$output = curl_exec($ch); 
$info = curl_getinfo($ch); 
curl_close($ch); 

print $info; 
print $output; 
?> 

私は私がdvaddropdowmenu.nameを設定することになっていないよかなり確信しているが、私は、私が投稿されることになっています何を知りません。どんな助けも素晴らしいだろう。

更新 私はついにそれを動作させました。私が今問題を抱えているのは、元のページから戻ってくるページにHTTPポストを再投稿する方法です。つまり、「Go」ボタンをクリックしたときと同じように、ページからHTMLを返すことになります。今、私はこの返されたページの検索ボタンを押す必要があります。投稿変数を変更してもう一度実行しようとしましたが、うまくいきませんでした。どんな助け?

+0

Tamper Data Firefoxの拡張機能を調べると、どのURLにどのURLがどのURLに投稿されているのかが分かります。あなたは正しい軌道に乗っています。私はたくさんのjavascriptを見ました:文字列がPOSTされています。 –

+0

本当に単純なものではありません。 –

答えて

0

これは、いくつかはそれを見つけるためにはJavaScriptを掘りましたが、ここでは実際に提出されていますフォームです:

form name=​"NycservProtocolForm" method=​"POST" action=​"NYCSERVMain">​ 
    <center>​…​</center>​ 
    <!-- N Y C S E R V P R O T O C O L --> 
    <input type=​"HIDDEN" name=​"ChannelType" value=​"ct/​Browser">​ 
    <input type=​"HIDDEN" name=​"RequestType" value=​"rt/​Business">​ 
    <input type=​"HIDDEN" name=​"SubSystemType" value=​"st/​Payments">​ 
    <input type=​"HIDDEN" name=​"AgencyType" value=​"at/​PVO">​ 
    <input type=​"HIDDEN" name=​"ServiceName" value=​"NONE">​ 
    <input type=​"HIDDEN" name=​"MethodName" value=​"NONE">​ 
    <input type=​"HIDDEN" name=​"PageID" value=​"NYCSERVHome">​ 
    <input type=​"HIDDEN" name=​"ParamCount" value=​"0">​ 
    <input type=​"HIDDEN" name=​"NycservRequest" value=​"EMPTY">​ 
    <input type=​"HIDDEN" name=​"SearchType" value=​"EMPTY">​ 
    <input type=​"HIDDEN" name=​"LinkType" value=​"EMPTY">​ 
</form> 

あなたはこれらの引数の何を決定することができますどのようにあなたがフォームに精通し、に応じて、送信します。しかし、これらはあなたがあなたのPOST要求を送るときに指定したい変数です。

+0

入力タイプが隠されているため、別の方法で変数を入力する必要がありますか? –

+0

@Jackまったくありません。 PHPは、それがどんなフォームタイプであっても名前と値だけを気にしません。 – sdleihssirhc

+0

試してみると、私のすべてのスクリプトから返されるエラーは500です。それはどういう意味ですか? –

関連する問題