PHP CURL로 사이트 로그인 하고 그 정보 유지하기
[code]
<?php
// 세션을 유지할 쿠키 파일 경로
$cookieFile = './cookie.txt';
// 로그인에 필요한 정보
$username = '사용자명';
$password = '비밀번호';
// 로그인 요청 URL
$loginUrl = '로그인_URL';
// CURL 세션 시작
$ch = curl_init();
// CURL 옵션 설정 - 로그인 요청
curl_setopt($ch, CURLOPT_URL, $loginUrl);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(
'username' => $username,
'password' => $password
)));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile);
// CURL 실행 및 응답 받기
$response = curl_exec($ch);
// CURL 세션 종료
curl_close($ch);
// 응답 확인
if ($response === false) {
// 에러 처리
echo 'CURL Error: ' . curl_error($ch);
} else {
// 로그인 후 작업을 수행할 요청 URL
$requestUrl = '세션_유지가_필요한_URL';
// CURL 세션 재시작
$ch = curl_init();
// CURL 옵션 설정 - 세션 유지 요청
curl_setopt($ch, CURLOPT_URL, $requestUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieFile);
// CURL 실행 및 응답 받기
$response = curl_exec($ch);
// CURL 세션 종료
curl_close($ch);
// 응답 확인
if ($response === false) {
// 에러 처리
echo 'CURL Error: ' . curl_error($ch);
} else {
// 응답 처리
echo $response;
}
}
[/code]
댓글 1개
잘 동작합니다. 간단하면서도 유용합니다.
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5366 | 기타 |
nekoieye
|
1년 전 | 1118 | |
| 5365 | PHP | 1년 전 | 773 | ||
| 5364 | JavaScript | 1년 전 | 526 | ||
| 5363 | JavaScript | 1년 전 | 993 | ||
| 5362 | 1년 전 | 1230 | |||
| 5361 | JavaScript | 1년 전 | 1240 | ||
| 5360 |
그누보드이해하기
|
1년 전 | 774 | ||
| 5359 | 1년 전 | 1090 | |||
| 5358 | 1년 전 | 1095 | |||
| 5357 | 1년 전 | 807 | |||
| 5356 | 1년 전 | 367 | |||
| 5355 |
|
1년 전 | 585 | ||
| 5354 | 1년 전 | 1062 | |||
| 5353 |
|
1년 전 | 703 | ||
| 5352 |
|
1년 전 | 639 | ||
| 5351 | PHP | 1년 전 | 808 | ||
| 5350 | PHP | 1년 전 | 573 | ||
| 5349 | OS | 1년 전 | 646 | ||
| 5348 | 기타 | 1년 전 | 450 | ||
| 5347 | 기타 | 1년 전 | 630 | ||
| 5346 | 기타 | 1년 전 | 505 | ||
| 5345 | 기타 | 1년 전 | 398 | ||
| 5344 | JavaScript |
|
1년 전 | 430 | |
| 5343 | PHP |
|
1년 전 | 501 | |
| 5342 | jQuery | 1년 전 | 575 | ||
| 5341 | PHP |
|
1년 전 | 879 | |
| 5340 | Mobile |
슈퍼스타맨
|
1년 전 | 559 | |
| 5339 | 기타 |
|
1년 전 | 559 | |
| 5338 |
멀티트리플
|
2년 전 | 1295 | ||
| 5337 | 기타 |
슈퍼스타맨
|
2년 전 | 1792 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기