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개
잘 동작합니다. 간단하면서도 유용합니다.
게시글 목록
| 번호 | 제목 |
|---|---|
| 16801 | |
| 16798 | |
| 16796 | |
| 16795 | |
| 16791 | |
| 16790 | |
| 16785 | |
| 16777 | |
| 16776 | |
| 16766 | |
| 16760 | |
| 16759 |
JavaScript
전화번호 및 휴대번호 자동하이픈(-)
2
|
| 16740 | |
| 16737 | |
| 16735 | |
| 16728 | |
| 16713 |
PHP
PHP Router
17
|
| 16700 | |
| 16691 | |
| 16669 | |
| 16668 |
MySQL
특정 row의 index 값 구하기
5
|
| 16660 | |
| 16655 | |
| 16654 | |
| 16647 | |
| 16639 | |
| 16637 | |
| 16634 | |
| 16629 | |
| 16620 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기