2016-06-22 3 views
0

新しいカテゴリ(id = 'new_cat')を書き込むための入力タイプのテキストの後にボタンがあるので、このajaxコードを取得し、変数を送信しませんAJAXでvarsを正しく送信できない

$(document).on('click', '#btn_new_cat', function(){ 
    var new_cat = $('#new_cat').val(); 
     var id = '<?php echo $not_cat_id; ?>'; 
     $.ajax({ 
      type: 'post', 
      url: 'dist/scripts/add_cat.php', 
      data: { 
       cat_id:id, 
       new_cat: new_cat 
      }, 
      success: function (data) { 
       console.log(data); 
      } 
     }); 
}); 

add_cat.php

<?php 
include "../../session.php"; 

$add_cat = $_POST['new_cat']; 
$not_cat_id = $_POST['cat_id']; 

$sql_ins_cat = "INSERT INTO categories(title) VALUES (:cat)"; 
    $ins_cat = $conn->prepare($sql_ins_cat); 
    $ins_cat ->bindParam(":cat", $add_cat); 
    $ins_cat ->execute(); 

    echo $not_tipo_id; 

?> 

おかげ

注:私はローカルによ、彼らはadd_cat.phpするように空を送っているので、私は成功した場合に得たすべてが空白ですDB(mysql)にも空の文字列が挿入されています。 add_cat.phpで私は私はあなたのAjaxの方法で

のcontentType属性が欠落していると思うVARS

+0

あなたは "送信しない"、何を意味していますか?彼らはPHPの$ _POSTに現れませんか?ネットワークスニファを使用しましたが、ワイヤに接続されている間は要求にそれらが存在しませんでしたか? –

+0

私はlocalhost上にいる、彼らは送信していると "作業"しかし、空のため、私が成功に得るものは空白のみです。 add_cat.phpで私はvarsからエコーを作成しています – JPeter

+0

/whenは$ not_cat_idが設定されていますか?あなたはページのどこかでそれをエコーすることができますか、それともユーザーがページ上の何らかのアクションで変更するはずですか? – DJC

答えて

0

からのエコーを作ってるんです。あなたはJSONを渡しているとして、それが "アプリケーション/ jsonの" あるべき

 $.ajax({ 
      type: 'post', 
      url: 'dist/scripts/add_cat.php', 
      contentType: 'application/json', 
      data: { 
       cat_id:id, 
       new_cat: new_cat 
      }, 

      success: function (data) { 
       console.log(data); 
      } 
     }); 
関連する問題