2017-11-21 10 views
0

JavaScriptは、PHPが行うべきことがあったとしても、常にエラーを返します。PHPスクリプトが動作してもJSONエラーが発生する

dataType: "JSON"または"JSONP"と書いても、それを完全に削除しても問題ありません。

echo json_encode(...を削除すると、正常に動作します。私は成功の警告を見る。

しかし、私は2つまたは3つの成功メッセージをhtmlでインラインで表示したいと考えています。

は、ここに私のJSコードです:

jQuery(document).ready(function($){ 
$('#przypinanie').click(function() { 
    var data_cat = $('select#cat').val(); 
    var data_post_id = $('input#przypinanie-post-id').val() ; 
    var przypinanie = $('input#przypinanie').val(); 

    $.ajax({ 
     url: ajaxurl, 
     data: { 
      cat_id: data_cat, 
      post_id: data_post_id, 
      przypinanie_usuwanie: przypinanie, 
      action: "przypinanie_php" 
     }, 
     success: function(data) { 
      alert(data); 
     }, 
     error: function(data) { 
      alert(data); 
     }, 
    }); 
}); 

私のPHPコード:

if ($przypinanie == "PRZYPNIJ") { 
    $validate = $wpdb->get_var("SELECT przypieta_cat_id FROM polecane_przypinane WHERE przypiety_post_id = '$post_id'"); 
    if (isset($validate)){  
     $msg = 'Wpis jest już przypięty do kategorii '. $validate ; 
    }else{ 
     $wpdb->insert('polecane_przypinane', 
      array(
      'przypiety_post_id' => $post_id, 
      'przypieta_cat_id' => $cat_id, 
      ) 
     ); 
     $msg = 'Wpis został przypięty do kategorii '. $validate ; 
    } 
    $responce = $msg; 
} 

header('Content-type: application/json'); 
echo json_encode($responce); 
+3

'$ responce'が文字列の場合、なぜ' json_encode'を使いたいのですか? – Pratansyah

+2

* "Jsは常にエラーを返す" * - エラーメッセージは何ですか? – nnnnnn

+0

'$ przypinanie'が' 'PRZYPNIJ" ' – charlietfl

答えて

-1

OK。答えをありがとう。

私はJSONから辞任しましたが、機能の最後にecho $responce;としました。

ここに私の最初の質問を歓迎しています。

関連する問題