index.php에 api넣은 후 http error 500이 되었습니다. 해결방법이 있을까요?
본문
안녕하세요. crm프로그램 연동하기 위해서
ftp서버 index.php 파일에 api코드를 만들어 넣었습니다.
하지만 홈페이지에서 특정버튼(상담신청)을 누르게 될 경우 http error 500이라는 문구와 함께
오류페이지가 나타납니다.
내부서버 오류 때문에 나타나는 것이라고 알고 있는데
제가 작성한 코드가 문제일까요? 아니면 어떤 것이 문제일까요??
API 코드 예시
if ( $_POST['action'] == "kboard_editor_execute" ){
$etc[] = "";
$etc['IP'] = $_SERVER['REMOTE_ADDR']; # ip
$data = [];
$data["apiKey"] = "ASDF12AFE52FF13"; # 코드
$data["csName"] = $_POST['member_display']; # 접수자이름
$data["csTel"] = $_POST['title']; # 접수자 연락처
$data["etc"] = json_encode($etc);# 접수자 메모
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_URL, "https://00.0000000.kr/api/requestPMDBphp");
$res = curl_exec($ch);
curl_close();
}
전문가님들 도와주십쇼!!
답변 4
500 에러나는걸 어디서 오류 나는지 확인을 하시고자 하신다면
error_reporting(E_ALL);
ini_set("display_errors", 1);
이걸 상단에 입력해 오류를 확인후 수정하시면 되십니다.
아래의 페이지를 호출하는 사이트에 오류 확인을 넣으시면 됩니다.
ftp서버 index.php 파일에 api코드를 만들어 넣었습니다.
하지만 홈페이지에서 특정버튼(상담신청)을 누르게 될 경우 http error 500이라는 문구와 함께
오류페이지가 나타납니다.
내부서버 오류 때문에 나타나는 것이라고 알고 있는데
제가 작성한 코드가 문제일까요? 아니면 어떤 것이 문제일까요??
API 코드 예시
if ( $_POST['action'] == "kboard_editor_execute" ){
$etc[] = "";
$etc['IP'] = $_SERVER['REMOTE_ADDR']; # ip
$data = [];
$data["apiKey"] = "ASDF12AFE52FF13"; # 코드
$data["csName"] = $_POST['member_display']; # 접수자이름
$data["csTel"] = $_POST['title']; # 접수자 연락처
$data["etc"] = json_encode($etc);# 접수자 메모
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_URL, "https://00.0000000.kr/api/requestPMDBphp");
$res = curl_exec($ch);
curl_close();
}
index.php 파일에 api코드를 만들어 넣었습니다.<=== 이 코드가 이상하네요
index페이지에서는 어디서 전송되는 값을 받는다고 $_POST 이런 것을 사용해서 API를 만드는가요?
특정버튼(상담신청)을 누르게 될 경우 http error 500이라는 문구와 함께
오류페이지가 나타납니다.<=== 상담신청 누르면 이동하는 페이지가 있겠죠?
그 페이지 상단에 넣으면 에러 내용이 보입니다
error_reporting(E_ALL); ini_set("display_errors", 1);
index.php 파일에 위 코드를 넣었다는 부분이 일단 이해는 안가지만,
해당 오류라면
if(isset($_POST['action']) && $_POST['action'] == 'kboard_editor_excute') 로 수정해 주시고,
마찬가지로 if 문 안의 해당 구문도
$data["csName"] = isset($_POST['member_display']) ? $_POST['member_display'] : '' ; # 접수자이름
$data["csTel"] = isset($_POST['title']) ? $_POST['title'] : ''; # 접수자 연락처
로 수정해 주시는 게 좋을 것 같습니다.
다만, if 문을 실행하기 전에 $_POST변수들에 대한 체크를 먼저 해주시는 게 좋을 것 같네요.