私はcurl
ライブラリのページのデータを取得しようとしています。私は単純なリンクで行うことができますが、フォームを送信してデータを取得しようとすると、できません。送信されたフォームではなく、pageのデフォルト値を返します。コードを説明しましょう。PHPカール投稿データ発行
$url = ...
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
// I'm sending post data
$params = array(
'madrak'=>5,
'B1' => 'مشاهده اطلاعات'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
// and execute...
私はデータを取得していますページがasp
と書かれていると、そのページのフォーム部分はこれです:
<input type="submit" value="مشاهده اطلاعات" name="B1">
<select name="madrak" size="1" class="style1" id="1">
<option value="1">زير ديپلم</option>
<option value="5">ديپلم</option>
<option value="6">فوق ديپلم</option>
<option value="7">ليسانس</option>
<option value="8">فوق ليسانس</option>
<option value="9">دكترا</option>
<option selected="" value="6">فوق ديپلم</option>
</select>
フォームが送信されていないようです。フォームを送信せずにロードしているデータを取得できるだけであるためです。何か案が?
$ info = curl_getinfo($ ch); print_r($ info)を試してください。結果のコールバックを取得します。 HTTP_Codeの戻り値が200かどうかをチェックするか...? –
@QuỳnhNguyễnそれは 'http_code'のために私にゼロを返します。しかし、それはデータを返します。 –
http_codeが0で、まだデータが返ってきているとは思えません。 –