私はこの質問が何度もStack-Overflowで尋ねられていることを知っていますが、答えのどれもが私の問題を解決しませんでした。私は、リモートでJSPサイトを閲覧するためにカール使用してPHPスクリプトを書いていますcurl phpでセッションを維持するには?
:ここ は私のコードです:
<?php
$loginUrl = 'http://ccc.hyundai-motor.com/servlet/ccc.login.CccLoginServlet';
$sh = curl_share_init();
curl_share_setopt($sh, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE);
$ch = curl_init();
curl_setopt($ch, CURLOPT_SHARE, $sh);
curl_setopt($ch, CURLOPT_URL, $loginUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,'the post data including my username and password and other hidden fields');
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_exec($ch);
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_SHARE, $sh);
curl_setopt($ch2, CURLOPT_URL,'http://ccc.hyundai-motor.com/servlet/ccc/admin/user/UserInfoServlet?cmd=myUserInfo');
curl_setopt($ch2, CURLOPT_COOKIEFILE,'cookie.txt');
curl_setopt($ch2, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch2, CURLOPT_VERBOSE, true);
$result = curl_exec($ch2);
print $result;
curl_share_close($sh);
curl_close($ch);
curl_close($ch2);
?>
私はクッキーファイルが作成されたコードを実行するが、私はエラー「セッションが失わ取得する場合、再ログインしてください。 "
http://stackoverflow.com/questions/13020404/keeping-session-alive-with-curl-and-php#13020494 – JustOnUnderMillions
あなたは私のコードの問題についてより具体的になりますか? –
あなたは最初の呼び出しでこれらの 'CURLOPT_COOKIEJAR | CURLOPT_COOKIEFILE'と' CURLOPT_COOKIEJAR'と第2の部分で 'CURLOPT_COOKIEFILE'のうちの1つだけを使うべきですか?http://stackoverflow.com/a/13020460/4916265 – JustOnUnderMillions