2016-10-04 8 views
0

내가 멍청하다. PHP 함수에 게시하는 JavaScript 함수가 있습니다. PHP는 "정의되지 않은 색인"은 mPicker에 있습니다. 그러나 동일한 기능 내에서 var_dump을 호출하면 mPicker이 분명히 표시됩니다. 동일한 함수에서 var_dump가 데이터를 표시하더라도 PHP 함수에서 작동하지 않습니다.

console.log

는 또한 양식 데이터가 직렬화했다 확인하기 위해 자바 스크립트에서 경고 클라이언트 측을 실행했습니다, 그리고 너무 mPicke r은 참으로 값이 있는지 보여줍니다. 그러나 PHP의이 줄은 다음과 같은 오류를 반환합니다.

$es=$_POST["mPicker"]; 

이것은 모두를위한 짧은 손일뿐입니다. 더 긴 버전의 코드는 SQL 주입을 테스트합니다.

그리고 Xdebug는의 오류 :

php error in xdebug

자바 스크립트 코드 :

$.post("./php/adates.php", { atype: apttype, data: $("#apptForm").serialize() }) 
.done(function(data) { 
    alert(data); 
}); 

그리고 PHP 함수 코드의 더 :

if (isset($_POST["atype"]) && !empty($_POST["atype"])) { 
    $typ = test_input($_POST['atype'], $con); 
} else { 
    echo "error ln 6: typ is undefined."; 
} 

$es=$_POST["mPicker"]; 
echo $es; 
exit; 

test_input는 함수 I는 SQL 주입 테스트와 ju 테스트를 위해 st.가 mPicker에 일시적으로 게시물에서 생략했습니다. 보시다시피, $_POST["atype"] 줄은 오류를 빠져 나오며 PHP 함수에서 완벽하게 해결됩니다. 나는 피곤하다는 것을 알고 바보 같은 것을 놓치고 있어야합니다. 도와주세요!

+0

처음으로 페이지가로드되면 $ _POST [ 'mpicker']가 설정되지 않으므로 오류 또는 경고가 표시됩니다. mPicker 테스트는 atype 테스트와 같은 방법입니다. – user2182349

+4

'atype'이라는 필드와 'data'라는 필드 두 개를 정확하게 게시하고있는 것 같습니다. – nnnnnn

+0

'! empty'이면 충분하며,'isset'은 필요하지 않습니다. – chris85

답변

1

시도는, 당신이 UR의 데이터를 볼 수 있습니다 "HTML은"다음 PHP에서 "var_dunmp"를 "에코"를 사용하거나하는 데이터 유형을 대신 "후"

$.ajax({ 
    type: 'POST', 
    url: url, 
    data: data, 
    dataType: "html", 
    success: function(html){ 
    console.log(html) 
    } 

}); 

의 jQuery를 "아약스"를 사용하여 설정 콘솔

+0

죄송합니다, "var_dump"아닌 "var_dunmp" –

+0

나는 아약스 같은 결과를 시도했다. 그러나 문제는 내가 두 개의 개별 변수 (하나는 직렬화 된 양식 데이터)를 보내는 방법이라는 것을 알게되었습니다. 그래서 나는이 라인을 ajax 호출 전에 추가했다. 'var data = "atype ="+ apttype + "&"+ $ ("# apptForm"). 감사. – jazcam

+0

글쎄, 나는 미니 포맷을 망쳤다. 죄송합니다. – jazcam

관련 문제