2013-05-21 3 views
3

이것은 내 코드의 업데이트입니다. 이제 update 문에서 값을 가져 오지만 여전히 구문 분석 오류가 발생합니다. 어쩌면 그것은 var update variabele과 관련이 있습니다.

$("#submit_tosolve").on("click",function(e) 
{ 
alert("ok"); 

$.valHooks.textarea = { 
    get: function(elem) { 
    return elem.value.replace(/\r?\n/g, "\r\n"); 
    } 
}; 

// DATA UITLEZEN UIT TEXTAREA 
var message =$("#bugcommentaar").val(); //OK 
//var solved_ajax=$('input:radio[status3]:checked').val(); //OK DIT NOG IN DATATYPE STEKEN data: 
console.log(message); 

var request = $.ajax({ 
    url: "ajax/facebook_ajax.php", 
    type: "POST", 
    data: {message : message}, //JSON 
    dataType: "json" 
}); 

request.done(function(msg) { 
if(msg.status=="success"){ 


    var update='<div style="display:none;" class="span4">'+ 
    ' <tr>'+'<td>'+'<TEXTAREA class="bugcommentaar">' 
    '<p>'+message+' <span> comment posted </span></p></TEXTAREA></tr></td></div>'; 

$("#comments tr").prepend(update); 
$("#comments tr td").first().slideDown(); //dit gaat werken op elke browser, de eerste eruit halen 

    } 
}); 

request.fail(function(jqXHR, textStatus) { 
    console.log("request failed" +textStatus); 
}); 

//HOU SUBMI TEGEN 
e.preventDefault(); 


}); 

여기 내 아약스 코드입니다. 하지만 내 ID에는 var message2가 필요하기 때문에 그렇게 할 수 없습니다.

<?php 
    session_start(); 
    include_once("../classes/Bug.class.php"); 


     if(isset($_POST['message'])) // komt van app.js 
     { 
      try 
      { 
       $Bug = new Bug(); 
       $Bug->Commentaar=$_POST['message']; 
       $Bug->Bug_id=$_SESSION["id2sessioncommentaar"]; 
       $Bug->UpdateCommentaar(); 
       $feedback['text'] = "Your comment has been posted!"; 
       $feedback['status'] = "success"; 
      } 
      catch(Exception $e) 
      { 
       $feedback['text'] = $e->getMessage(); 
       $feedback['status'] = "error"; 
      } 

      header('Content-Type: application/json'); 
      echo json_encode($feedback); 

     } 


?> 
+0

그래서 실제 문제가 무엇인가? PHP에 $ _POST [ "messageid2"]를 추가하면 작동합니다. – mplungjan

답변

2

개체의 데이터를 문자열로 변경해보십시오. 과거에는 저에게 효과적이었습니다.

data: "{'message':" + message + ", 'messageid2':" + messageid2+ "}", //JSON 

편집 :

또한 그가

contentType: 'application/json; charset=utf-8', 
+0

안녕하세요. 나는 또한 헤더 ('Content-Type : application/json; charset = utf-8'); 내 아약스 파일에 있지만 작동하지 않았다. 또한 문자열을 인쇄 할 수 있습니다, 그것은 두 개의 분리 된 값이어야합니다. 왜냐하면 나는 그것들을 업데이트 쿼리로 만들어야하기 때문입니다. – Glenda

4

안녕하세요이 보일하시기 바랍니다 수있는 콘텐츠 유형을 설정 ..

var request = $.ajax({ 
    url: "ajax/facebook_ajax.php", 
    type: "POST", 
    data: { message : $("#bugcommentaar").val(), 
     messageid2: $("#id2").val() 
    }, 
    dataType: "json" 
}); 
+0

좋아, 그걸 시도 할께 – Glenda

+0

나는 그것을 시도했지만 요청 구문 분석 오류가 발생하고 내 아약스 파일에 다음과 같은 : UPDATE bugs SET commentaar = ''bug_id = { "text": "귀하의 의견이 게시되었습니다! ","status ":"success "} 따라서 아아아스 파일에는 값이 없습니다. – Glenda

+0

내 콘솔에 다음과 같이 출력했습니다 : UPDATE bugs SET commentaar = 'dqsdqsdqs'where bug_id = 61 { "text": "귀하의 코멘트가 게시되었습니다!", "status": "success"} 그러나 나는 여전히 구문 분석을받습니다 request.fail (function (jqXHR, textStatus) { console.log ("요청 실패"+ textStatus); }); – Glenda

관련 문제