2013-03-03 1 views
1

언제나 "E"와 "E"만 반환하는 양식을 제출하려고 할 때마다이 문제가 발생하는 이유를 모르겠지만 아무도이 문제를 해결할 수 있습니까?Jquery는 PHP에 숫자를 전달하지 않을 것입니다

은 내가 여러 가지 방법을 시도하고 난 수 있으며, t는

코드

jQuery를 반환해야 결과를 얻을 수가 :

 $('#edit_ok_btn').click(function(e) 
{ 
    e.preventDefault(); 
    $('#NoticeBox').hide("slide", { direction: "up" }, 500, function() { 
    $('#NoticeBox').show("slide", { direction: "up" }, 500); 
    $('#NoticeBox').removeClass() 
    $('#NoticeBox').addClass('Box_Working') 
    $('#noticeText').html("Processing page..."); 

    var formData = $('#EditorForm').serialize(); 
    submitWebPage(formData); 



    }); 
}); 

    function submitWebPage(formData) { 

$.ajax({  
    type: 'POST', 
    url: 'PageProcessor.php',  
    data : {'formdata' : formData}, 
    dataType: 'json', 
    cache: false, 
    timeout: 7000, 
    success: function(data) { 


    $('#NoticeBox').hide("slide", { direction: "up" }, 500, function() { 

     if(data.error == false) 
     { 
      $('#NoticeBox').show("slide", { direction: "up" }, 500); 
      $('#NoticeBox').removeClass() 
      $('#NoticeBox').addClass('Box_Success') 
      $('#noticeText').html(data.msg); 
      $('#PageEditor').fadeOut(1000); 

      $('#NoticeBox').delay(1000).hide("slide", { direction: "up" }, 500, function() { 
      location.reload(); 
      }); 



     } 
     else 
     { 
      $('#NoticeBox').show("slide", { direction: "up" }, 500); 
      $('#NoticeBox').removeClass() 
      $('#NoticeBox').addClass('Box_Error') 
      $('#noticeText').html(data.error); 
     } 

    }); 

    }, 
    error: function(XMLHttpRequest, textStatus, errorThrown) { 

    $('#responder').removeClass().addClass('Box_Error').html('<p>There was an ERROR!<strong></p>'); 


    } 
}); 

PHP를

$PageID   = $_POST['formdata']['EditID']; 
$PageTitle  = $_POST['formdata']['PageTitle']; 
$PageCategory = $_POST['formdata']['CategoryList']; 
$PageContent = $_POST['formdata']['elm1']; 
$PagePublished = $_POST['formdata']['PublishPageOption']; 

if($PageID == "NEW") 
{ 

mysqli_query("INSERT INTO Web_Pages (Title, HTML, Category, Last_Author, Edit_Date, Published) VALUES ('".$PageTitle."','". $PageContent."','".$PageCategory."','LUX','".date("Y-m-d")."','".$PagePublished."') "); 

     $return['error'] = false; 
     $return['msg'] = '<i>'.$PageTitle.'</i> has been created successfully.'; 
     echo json_encode($return); 
} 
else 
{ 
    mysqli_query("UPDATE Web_Pages SET Title = '".$PageTitle."', HTML = '".$PageContent."', Category = '".$PageCategory."', Last_Author='LUX', Edit_Date = '".date("Y-m-d")."', Published = '".$PagePublished."') WHERE ID = '".$PageID."' "); 

     $return['error'] = false; 
     $return['msg'] = '<i>'.$PageTitle.'</i> has been updated successfully.'; 
     echo json_encode($return); 
} 

paste-bin link to the source code

+0

mysql_ 함수는 더 이상 maintaned가 아니며 더 이상 사용되지 않을 것이므로 사용하지 마십시오. Google, PDO 또는 Mysqli 대신 – samayo

+0

@PHPNooB, 팁 주셔서 감사합니다. 나중에 조사해 볼게요. – LUX

+0

업데이트 sql 명령을 phpmyadmin에 복사하고 실제 값을 입력 한 다음 작동하는지 확인하십시오. – michi

답변

2

UPDATE 쿼리 끝 부분에 )이 있으면 안됩니다. 편집을 잊어 버린 곳의 복사/붙여 넣기/편집 결과 일 가능성이 있습니다.

+1

@kloink, 고마워, 내가 그랬어!,하지만 그 값의 문제를 해결하지 않습니다. – LUX

0

메신저 실수!

data: 'formData', 

이 이제 문자열로 처리됩니다하지 변수 난 당신이 PHP에서이

data : {'formdata' : formData} 

처럼 뭔가를해야 할 것 같아요

당신과 함께 데이터를 얻을 수 있습니다

$_POST['formdata']; 
+1

거품을 터뜨려 미안 해요 ...하지만 그 중 하나가 작동하지 않습니다, 그냥 시도 – LUX

+0

이것이 문제를 해결하지 못하면 ..! 그럼 당신은 다른 문제가 .. 사촌 분명히 처음부터 모든 것을 잘못하고 있었다 .. print_r ($ _ POST)를 사용하고 우리에게 밖으로 넣어 .. 표시하고'$ _POST [ 'formdata'] [ 'PageTitle'] ' –

+0

그 코드가 출력되는 것은 모두 "E"입니다. 어떤 타입이든 "E"만 반환합니다. – LUX

관련 문제