PHPでログインが必要なページを取り込みたい

<?php
// Cookie情報を保存する一時ファイルディレクトリにファイルを作成します
$tmp_path =  tempnam(sys_get_temp_dir(), "CKI");

//postするデータの配列
$account_data = array('id' => "id" ,'password'=> "pass" ,"mode"=>"login");

$url = "http://hogehoge.com/login.php";

$ch = curl_init(); // はじめ

curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

//POST送信
curl_setopt($ch,CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($account_data));

//Cookie受信
//cookieオプション
curl_setopt($ch,CURLOPT_COOKIEFILE,$tmp_path);
curl_setopt($ch, CURLOPT_COOKIEJAR, $tmp_path);
curl_exec($ch);//実行
curl_close($ch); //終了

$url = "http://hogehoge.com/mypage.php";
$ch = curl_init(); // はじめ

curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

//Cookie送信
//cookieオプション
curl_setopt($ch,CURLOPT_COOKIEFILE,$tmp_path);
curl_setopt($ch, CURLOPT_COOKIEJAR, $tmp_path);

$html = curl_exec($ch);//実行
curl_close($ch);

var_dump($html);

//一時ファイル削除
unlink($tmp_path);

参考: http://qiita.com/wanwanland/items/a5f9574fadd214d7b5c8

カテゴリ:CakePHP 投稿日時:2017年4月12日 10:30


コメント

コメントはまだありません。

コメント投稿

ご自由にコメントください!
※一度投稿すると削除できませんのでご注意ください。管理者の独断と偏見で削除する場合があります。コメント機能は予告なく停止する場合があります。

ニックネーム

コメント

カテゴリ

新着備忘録

「MySQL」ERROR 2013 (HY000) at line : Lost connection to MySQL server during query

MySQLでERROR 2013 (HY000) at line : Lost connection to MySQL server during queryエラーが出た。

CakePHP3 CSSやjavascriptを更新したのに反映されない!

CakePHP3でCSSやjavascriptにタイムスタンプをつける方法です。

CakePHP3のタイムゾーン設定

CakePHP3のタイムゾーン設定方法です。

Thunderbirdで同じメールが何度も届く件

Thunderbirdで同じメールが何度も届く件についてです。

CakePHP3でCSV出力

CakePHP3でCSV出力する方法です。