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에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5066 | 기타 |
DogFoot개발
|
4년 전 | 1819 | |
| 5065 | PHP |
DogFoot개발
|
4년 전 | 1530 | |
| 5064 | PHP |
happyl
|
4년 전 | 1921 | |
| 5063 | node.js |
DogFoot개발
|
4년 전 | 1676 | |
| 5062 | node.js |
DogFoot개발
|
4년 전 | 1693 | |
| 5061 | node.js |
DogFoot개발
|
4년 전 | 1418 | |
| 5060 | node.js |
DogFoot개발
|
4년 전 | 1255 | |
| 5059 | node.js |
DogFoot개발
|
4년 전 | 1251 | |
| 5058 | 기타 |
DogFoot개발
|
4년 전 | 2697 | |
| 5057 | 웹서버 |
DogFoot개발
|
4년 전 | 2726 | |
| 5056 | MySQL | 4년 전 | 1506 | ||
| 5055 | 기타 | 4년 전 | 1436 | ||
| 5054 | OS | 4년 전 | 2070 | ||
| 5053 | 웹서버 | 4년 전 | 3633 | ||
| 5052 | OS | 4년 전 | 2426 | ||
| 5051 | PHP | 4년 전 | 2190 | ||
| 5050 | 웹서버 | 4년 전 | 1722 | ||
| 5049 | MySQL | 4년 전 | 1900 | ||
| 5048 | OS | 4년 전 | 2705 | ||
| 5047 | PHP | 4년 전 | 4376 | ||
| 5046 | MySQL | 4년 전 | 1821 | ||
| 5045 | MySQL | 4년 전 | 1944 | ||
| 5044 | MySQL | 4년 전 | 4135 | ||
| 5043 | MySQL | 4년 전 | 1892 | ||
| 5042 | 기타 |
|
4년 전 | 2638 | |
| 5041 | MySQL | 4년 전 | 1999 | ||
| 5040 | MySQL | 4년 전 | 1726 | ||
| 5039 | MySQL | 4년 전 | 1501 | ||
| 5038 | MySQL | 4년 전 | 1338 | ||
| 5037 | OS | 4년 전 | 4433 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기