ㅇㄶ
2020-05-06 15:49:45
3
129

ajax error "200 parsererror"


로그인을 했을때는 코드가 제대로 작동하여 success의 함수가 출력되는데 로그인을 안한상태에서 댓글목록 출력이 안됩니다ㅠㅠ 왜그럴까요ㅠㅠㅠ

function loadComments(article_no) {
var target = $(document.getElementById(article_no).getElementsByClassName('comment_box'));
var url = '/bbs/board.ajax.php';
var data = {
article_no: article_no,
process_type: "get_comments"
};
$.ajax({
type: "POST",
url: url,
data: data,
success: function(res) {
console.log('res : ',res);
console.log('ajax response: ', res.data);
var comment_list = res.data;
var html = '';
if(comment_list.length > 0) {
comment_list.forEach( function(row, index) {
html += '<div class="writer">';
html += row.sideview;
html += '</div>';

html += '<div class="text_bubble">' + '<p>' + row.content + '</p>';

html += '</div>';
})
}
target.html(html);
},
error: function(request, error) {
alert(request.status);
alert(error);
},
dataType: 'json'
});
}



board.ajax의 get_commets 부분입니다
case 'get_comments':
$bbs = new BBS($ndb, $member);
$comment_list = $bbs->get_comment_list($_POST['article_no']);
$list = conv_bbs_comment_list($comment_list);
$result['data'] = $list;
break;
0
0
  • 답변 3

  • citadel
    533
    2020-05-06 15:59:48

    target 변수 선언을 success 함수 안으로 넣어보세요.

    0
  • ㅇㄶ
    2020-05-06 16:07:09

    <font size='1'><table class='xdebug-error xe-fatal-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>

    <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Fatal error: Call to a member function get_user_html() on null in lib/common.lib.php on line <i>306</i>


    res로 받는값이 저렇게 뜨고 get_user_html()은 아래와 같습니다ㅠㅠ


    public function get_user_html($mb) {


    $element = [];
    $user = '';
    if ($this->config['is_print_profile_image'] === true) {
    $element[] = 'user_profile';
    $user .= $this->get_profile_img($mb, $this->config['profile_image_height'], $this->config['profile_image_width']);
    }

    if ($this->config['is_print_level'] === true) {
    $element[] = 'user_level';
    $user .= $this->level->get_level_image_html($mb, $this->config['level_size']);
    }

    if (empty($mb['family']['name']) === false) {

    $family = $mb['family'];

    $fname_style_class = 'fname';
    $fname_style_class .= ' lv' . $family['grade'];

    if ($this->is_top_family_master($mb['mb_id'])) {
    $fname_style_class .= ' top_family_master';
    }

    if ($this->is_best_family_master($mb['mb_id'])) {
    $fname_style_class .= ' best_family_master';
    }

    $user .= '<a class="' . $fname_style_class . '" href="/family/home.php?family_id=' . $family['id'] . '">[' . $family['name'] . ']</a> ';
    }

    if ($this->config['is_print_nick_name'] === true) {
    $element[] = 'user_nickname';
    $user .= $this->get_nickname($mb, $this->config['is_hide_nick_name'], $this->config['target']);
    }

    $is_friend = !!($this->friend->is_friend($mb['mb_id']));
    if ($is_friend === true)
    $user .= '<span class="ico_friend"></span>';

    return '<div class="member ' . implode(' ', $element) . '">' . $user . '</div>';
    }
    0
  • citadel
    533
    2020-05-06 16:12:55

    BBS 객체 내에 문제가 있는 거 같습니다.

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.