AJAX를 사용할 때 PHP 파일의 "정의되지 않은"응답 및 responseText

레자 남 바르

html로 작성된 양식, 일부 AJAX 코드 및 웹 사이트 관리자에게 양식 정보를 이메일로 보내는 PHP 파일이 있습니다. 문제는 FireBug 애드온의 "콘솔"탭으로 코드를 검사 할 때 모든 것이 예상대로된다는 것입니다. 응답은 "OK My Friend"(이메일이 성공적으로 전송 된 경우에 해당)입니다. 내가 정확히 표시 할 때 response또는 responseText이 2 명 선으로을 : alert(this.responseText);alert(this.response);열린 경고 창은 말한다 : 두 경우 모두에서 "정의되지 않은". PHP 파일이 응답을 올바르게 보내고 FireBug가이를 증명한다는 것을 의미합니다. 하지만 this.response또는로 응답을받을 수 없습니다 this.responseText. 당신의 의견에 문제가 무엇입니까? 내 질문의 중복 가능성을 확인했지만 아무도 도움이되지 않았습니다.
내 완전한 코드는 다음과 같습니다.
PHP :

<?php
$to = "[email protected]";
$sendersName = $_POST[ 'name' ];
$sendersEmail = $_POST[ 'email' ];
$message = "Name : " . $sendersName . "\n";
$message .= "Email : " . $sendersEmail . "\n";
$message .= "Message : " . $_POST[ 'message' ] . "\n";
$header = "From:[email protected] \r\n";
$header .= "Cc:[email protected] \r\n";
$header .= "Bcc:[email protected] \r\n";
$result = mail( $to, "ارسال پیام به وبسایت تیام نت", $message, $header );
if ( $result == true ) {
    echo( "OK My Friend" );
} else {
    echo( "email not sent" );
}
?>

HTML 양식 :

    <div class="col-sm-5" id="contact_form">
  <form action="" method="post">
    <div class="form-group">
      <label for="name">نام و نام خانوادگی</label>
      <input type="text" class="form-control" name="name" placeholder="نام و نام خانوادگی خود را وارد کنید." id="name">
      <label class="error" for="name" id="name_error">وارد نمودن نام و نام خانوادگی اجباری است.</label>
    </div>
    <div class="form-group">
      <label for="email">ایمیل</label>
      <input type="email" class="form-control" name="email" placeholder="آدرس ایمیل خود را وارد کنید." id="email">
      <label class="error" for="email" id="email_error">وارد نمودن ایمیل اجباری است.</label>
    </div>
    <div class="form-group">
      <label for="message">پیام</label>
      <input type="text" name="message" class="form-control" placeholder="پیام خود را بنویسید." id="message">
      <label class="error" for="message" id="message_error">وارد نمودن پیام اجباری است.</label>
    </div>
    <div class="form-group">
      <input type="submit" name="submit" value="ارسال" id="submit" class="center-block btn btn-primary">
    </div>
  </form>
</div>


AJAX :

$(function () {
    "use strict";
    $('.error').hide();
    $("input#submit").click(function () {
        // validate and process form here

        $('.error').hide();
        var name = $("input#name").val();
        if (name === "") {
            $("label#name_error").show();
            $("input#name").focus();
            return false;
        }
        var email = $("input#email").val();
        if (email === "") {
            $("label#email_error").show();
            $("input#email").focus();
            return false;
        }
        var message = $("input#message").val();
        if (message === "") {
            $("label#message_error").show();
            $("input#message").focus();
            return false;
        }
        var dataString = 'name=' + name + '&email=' + email + '&message=' + message;
        alert(dataString);
        $.ajax({
            type: "POST",
            url: "sendMessage.php",
            data: dataString,
            success: function () {
                alert(this.responseText);
                alert(this.response);
                if (this.responseText === "OK My Friend") {
                    $('#contact_form').html("<div id='message'></div>");
                    $('#message').html("<h2>پیام شما ثبت شد!</h2>")
                        .append("<p>همکاران ما به زودی با شما تماس خواهند گرفت.</p>")
                        .hide()
                        .fadeIn(1500, function () {
                            $('#message').append("OK");
                        });
                } else {
                    //$('#contact_form').html("<div id='message'></div>");
                    //$('#message').html(this.responseText);
                }
            }
        });
        return false;
    });
});
톰 어딩

this.responseText그리고 this.response당신의 자바 스크립트에 정의되지 않습니다 콘솔에 정의되지 않은 오류가 발생합니다. 서버에서 데이터를 가져 오려면 다음으로 변경해야 success: function합니다.

success: function (data) {
    alert(data); // the response from the server

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

RSpec에서 let 및 subject를 사용할 때 정의되지 않은 메서드 응답

분류에서Dev

ajax 및 PHP를 사용하는 동안 정의되지 않은 색인 문제

분류에서Dev

PHP에서 JavaScript 변수를 사용할 때 정의되지 않은 색인

분류에서Dev

JSONP를 사용할 때 정의되지 않은 DataSource 콜백

분류에서Dev

$ this를 사용할 때 정의되지 않은 메서드 호출

분류에서Dev

Devise를 사용할 때 정의되지 않은 method confirm_at

분류에서Dev

Doctrine QueryBuilder를 사용할 때 정의되지 않은 변수

분류에서Dev

Ajax를 통해 전송할 때 정의되지 않은 변수

분류에서Dev

PHP 확장을 빌드 할 때 정의되지 않은 참조

분류에서Dev

단순 스키마 및 반응 (유성 앱)을 사용할 때 정의되지 않은 수집 오류

분류에서Dev

ajax를 통해 PHP로 파일을 보낼 때 정의되지 않은 색인

분류에서Dev

하위 폴더에서 .h 및 .cpp를 컴파일 할 때 C ++ 정의되지 않은 참조

분류에서Dev

Sass 및 Angular에 대해 ng serve를 사용할 때 정의되지 않은 변수 오류 발생

분류에서Dev

기본 구성 요소 클래스에서 상태를 사용할 때 반응에서 정의되지 않은

분류에서Dev

Ajax를 통해 입력 값을 제출할 때 PHP 정의되지 않은 색인

분류에서Dev

@foreach를 사용하려고 할 때 "정의되지 않은 변수 : 사용자"

분류에서Dev

libvpx로 프로젝트를 컴파일 할 때 정의되지 않은 참조

분류에서Dev

Firebase 저장소를 사용할 때 정의되지 않은 클래스 StorageReference

분류에서Dev

axios를 사용할 때 정의되지 않은 작업 페이로드

분류에서Dev

QQ Android SDK를 사용할 때 Tencent.onActivityResult가 정의되지 않은 이유

분류에서Dev

폴더 구조를 사용할 때 C ++ 정의되지 않은 기호

분류에서Dev

ifort / icc를 사용할 때 'main'에 대한 정의되지 않은 참조

분류에서Dev

Devise에서 current_user를 사용할 때 정의되지 않은 메서드

분류에서Dev

OpenCV : cmake를 사용할 때`cv :: imread에 대한 정의되지 않은 참조

분류에서Dev

gtest –– TEST_F를 사용할 때 정의되지 않은 기호

분류에서Dev

Google 테스트 프로젝트를 빌드 할 때 'getcwd'및 'mkdir'에 대한 정의되지 않은 참조

분류에서Dev

jQuery.post에서 PHP로 데이터를 반환 할 때 정의되지 않은 매개 변수

분류에서Dev

예약 된 작업에서 PHP를 실행할 때 정의되지 않은 $ _SCRIPT 변수

분류에서Dev

데이터베이스 쿼리를 시도 할 때 정의되지 않은 인덱스 PHP / MySQL

Related 관련 기사

  1. 1

    RSpec에서 let 및 subject를 사용할 때 정의되지 않은 메서드 응답

  2. 2

    ajax 및 PHP를 사용하는 동안 정의되지 않은 색인 문제

  3. 3

    PHP에서 JavaScript 변수를 사용할 때 정의되지 않은 색인

  4. 4

    JSONP를 사용할 때 정의되지 않은 DataSource 콜백

  5. 5

    $ this를 사용할 때 정의되지 않은 메서드 호출

  6. 6

    Devise를 사용할 때 정의되지 않은 method confirm_at

  7. 7

    Doctrine QueryBuilder를 사용할 때 정의되지 않은 변수

  8. 8

    Ajax를 통해 전송할 때 정의되지 않은 변수

  9. 9

    PHP 확장을 빌드 할 때 정의되지 않은 참조

  10. 10

    단순 스키마 및 반응 (유성 앱)을 사용할 때 정의되지 않은 수집 오류

  11. 11

    ajax를 통해 PHP로 파일을 보낼 때 정의되지 않은 색인

  12. 12

    하위 폴더에서 .h 및 .cpp를 컴파일 할 때 C ++ 정의되지 않은 참조

  13. 13

    Sass 및 Angular에 대해 ng serve를 사용할 때 정의되지 않은 변수 오류 발생

  14. 14

    기본 구성 요소 클래스에서 상태를 사용할 때 반응에서 정의되지 않은

  15. 15

    Ajax를 통해 입력 값을 제출할 때 PHP 정의되지 않은 색인

  16. 16

    @foreach를 사용하려고 할 때 "정의되지 않은 변수 : 사용자"

  17. 17

    libvpx로 프로젝트를 컴파일 할 때 정의되지 않은 참조

  18. 18

    Firebase 저장소를 사용할 때 정의되지 않은 클래스 StorageReference

  19. 19

    axios를 사용할 때 정의되지 않은 작업 페이로드

  20. 20

    QQ Android SDK를 사용할 때 Tencent.onActivityResult가 정의되지 않은 이유

  21. 21

    폴더 구조를 사용할 때 C ++ 정의되지 않은 기호

  22. 22

    ifort / icc를 사용할 때 'main'에 대한 정의되지 않은 참조

  23. 23

    Devise에서 current_user를 사용할 때 정의되지 않은 메서드

  24. 24

    OpenCV : cmake를 사용할 때`cv :: imread에 대한 정의되지 않은 참조

  25. 25

    gtest –– TEST_F를 사용할 때 정의되지 않은 기호

  26. 26

    Google 테스트 프로젝트를 빌드 할 때 'getcwd'및 'mkdir'에 대한 정의되지 않은 참조

  27. 27

    jQuery.post에서 PHP로 데이터를 반환 할 때 정의되지 않은 매개 변수

  28. 28

    예약 된 작업에서 PHP를 실행할 때 정의되지 않은 $ _SCRIPT 변수

  29. 29

    데이터베이스 쿼리를 시도 할 때 정의되지 않은 인덱스 PHP / MySQL

뜨겁다태그

보관