JQUERY, AJAX 및 PHP에서 내 머리를 잡으려고 고심하고 있습니다.JSON을 JQuery AJAX CALL로 반환하는 PHP
이제 PHP를 호출하고 양식 요소를 처리하고 이메일을 보낼 수 있지만 AJAX 로의 반품은 처리하지 않습니다. 항상 error:
선택기가 활성화되고 JSON 반환 목록을 표시하려고하면 정보가 잘못 표시됩니다. 가정 JSON 리턴되어 JSON 데이터
readyState=4
setRequestHeader=function (a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this}
getAllResponseHeaders=function(){return s===2?n:null}
getResponseHeader=function (a){var c;if(s===2){if(!o){o={};while(c=bF.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c}
overrideMimeType=function (a){s||(d.mimeType=a);return this}
etc etc
사람이 바보 어떤 실수 내가 만든하도록 조언 할 수있는 경우
의<?php
touch('phpTouch.txt');
// process email
$email=1;
if ($email) {
$value = array('return' => 1, 'msg1' => 'Message sent OK, we will be in touch ASAP');
} else {
$value = array('return' => 0, 'msg1' => 'Message Failed, please try later');
}
$output = $json->encode($value);
echo $output;
?>
자바 스크립트와 AJAX
function submitForm(evt) {
$('#msgid').html('<h1>Submitting Form (External Routine)</h1>');
if ($('#formEnquiry').valid()) {
$("#msgid").append("<h1>(Outside Ready) VALIDATED send to PHP</h1>");
$.ajax({
url: "ContactFormProcess3.php",
type: "POST",
data: $('#formEnquiry').serialize(),
dataType: "json",
success: function (data) {
alert("SUCCESS:");
for(var key in data) {
$('#msgid').append(key);
$('#msgid').append('=' + data[key] + '<br />');
}
},
error: function (data) {
alert("ERROR: ");
for(var key in data) {
$('#msgid').append(key);
$('#msgid').append('=' + data[key] + '<br />');
}
}
});
} else {
$('#msgid').append('<h1>(Outside Ready) NOT VALIDATED</h1>');
}
evt.preventDefault();
};
목록에
PHP , 그러면 나는 가장 감사 할 것입니다.
여기서'$ json'이 정의되어 있습니까? 그냥'json_encode(); '를 사용할 수 있습니다. – Prisoner
어떤 jQuery 버전을 사용하고 있습니까? – marc
@marc Google의 1.6.2 버전 CDN – mcl