ajax post 데이터보내기 채택완료
그누보드를 이용하여 회원검증시 다른 서버로 데이터를 보내는 작업을 하고 있습니다.
그래서 일단 테스트를 하느라 로컬에서 그누보드 회원 가입하는 부분에서
검증하는 자바스크립트 부분에
var rst_yn = "";
var knd_cod ="";
if (f.w.value == "") {
//console.log(f.reg_mb_id.value);
//console.log(f.mb_password.value);
//console.log(f.mb_email.value);
console.log(g5_url+"/test_reg.php");
$.ajax({
type: "POST",
url: g5_url+"/test_reg.php", //http://localhost/macroz">http://localhost/macroz
data: {
"KND_COD": 'A|11',
"USER_ID": f.reg_mb_id.value,
"PASS": f.mb_password.value,
"EMAIL": f.mb_email.value
},
//dataType: "json",
async: false,
cache: false,
success: function(data, textStatus) {
rst_yn = data.RST_YN;
knd_cod = data.KND_COD;
console.log(rst_yn);
console.log(knd_cod);
}
});
}
이라놓고
index.php 있는 부분에 test_reg.php를 만들어
$data = $_POST['KND_COD'];
$data2 = $_POST['USER_ID'];
echo $data2;
echo "aaaaaaa";
var_dump($data);
echo "bbbbbbbb";
라는 코드를 만들었더니
Notice: Undefined index: KND_COD
Notice: Undefined index: USER_ID
라는 에러코드가 나오고 있습니다.
데이터를 보내지 못하고 있는거 같은데 왜 이런 증상이 나올까요??
답변 2개
php 코드에서는 그렇지 않게 보내고 있네요<br />
<br />
echo '{"RST_YN":"값","KOD_COD":"값"}';<br />
이런식으로 리턴해야 값을 받을수 있습니다<br />
<br />
그리고 <br />
<br />
data: {<br />
"KND_COD": 'A|11',<br />
"USER_ID":&nbsp; f.reg_mb_id.value,<br />
"PASS": f.mb_password.value,<br />
"EMAIL": f.mb_email.value <br />
},<br />
<br />
이부분도 틀렸는데요<br />
"KOD_COD" 와 같은 부분들에서 쌍따옴표를 제거하세요<br />
즉<br />
KOD_COD:"A|11",<br />
USER_ID:f.reg_mb_id.value,<br />
<br />
이와같이 수정하시면 됩니다.<br />
<br />
답변에 대한 댓글 2개
var knd_cod ="";
if (f.w.value == "") {
//console.log(f.reg_mb_id.value);
//console.log(f.mb_password.value);
//console.log(f.mb_email.value);
console.log(g5_url+"/test_reg.php");
$.ajax({
type: "POST",
url: g5_url+"/test_reg.php", //http://localhost/macroz
data: {
KND_COD: 'A|11',
USER_ID: f.reg_mb_id.value,
PASS: f.mb_password.value,
EMAIL: f.mb_email.value
},
dataType: "json",
async: false,
cache: false,
}).success(function(data) {
rst_yn = data.RST_YN;
knd_cod = data.KND_COD;
console.log(rst_yn);
console.log(knd_cod);
});
}
======================================================================
header('Content-Type: application/json');
$data = $_POST['KND_COD'];
$data2 = $_POST['USER_ID'];
echo '{"RST_YN":"$data","KOD_COD":"$data2"}';
확인차 보낸값을 그대로 받기 위해 알려주신데로 보냈는데도 여전히 같은 증상이 일어나고 있습니다. 보내고 있는 값이 받지를 못하고 있는것 같은데...........
댓글을 작성하려면 로그인이 필요합니다.
var href=g5_url+"/test_reg.php";
$.post(
href,
{ KND_COD: 'A|11',
USER_ID: f.reg_mb_id.value,
PASS: f.mb_password.value,
EMAIL: f.mb_email.value
},
function(data) {
if(data.errors) {
alert(data.errors);
return false;
}
var rst_yn = data.RST_YN;
var knd_cod = data.KND_COD;
console.log(rst_yn);
console.log(knd_cod);
} // if end
return;
}, "json" //fun end
); //post end
이걸로 해보시죠
내용상으로는 문제 없어보이지만 그래도 알수 없으니
이걸로 사용해보세요.
jquery-1.8.11.min.js 와 같은 자바스크립트 파일은 참조하도록 하신거죠?
답변에 대한 댓글 3개
작성하신 소스코드들중에
; 을 뺴먹었다거나 괄호를 열기만하고 닫지 않았다거나 등의
구문오류가 있는지 확인해보셔야 될거 같네요
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인