2016-11-19 63 views
2

我有一個簡單的模態窗口,其中包含輸入字段。我正在使用jquery ajax來驗證以及使用php提交數據到數據庫。 ajax請求顯示狀態代碼200確定,但數據不會被插入,也不會執行成功功能。有沒有人注意到任何錯誤?需要幫助Ajax請求顯示完成但未提交數據

<script type="text/javascript"> 

      $(document).ready(function() { 
       $("#add_location").click(function() { 

       var inputDiv = $('#inputDiv').val(); 
       var dataString = 'location=' + inputDiv; 

       if (inputDiv == '') { 
       $('#error_message').html("Please enter a location"); 
      } else { 
       $.ajax 
      ({ 
       type: "POST", 
       url: "add_location.php", 
       data: dataString, 

       success: function(data) 
       { 
         $("#error_message").empty(); 
         $("#error_message").html(data); 
       } 
       }); 

      } 
      return false; 
       }); 
      }); 


</script> 

add_location.php

<?php 

$location = new dbhandler(); 



$ran_id = mt_rand(45287,98758); 

if(isset($_POST)) { 

$locationData = $_POST['location']; 

    try{ 
    $location->create('shop_locations', array(
     'r_id' => $ran_id, 

     'location' => $locationData, 
    )); 
    echo "Location successfully added"; 
    }catch(Exception $e){ 
    die($e->getMessage()); 
    } 
} 

創建()是將數據插入

create($tableName, $fields = array()); 
+0

你發佈後獲得在你的PHP文件中的數據有什麼不同? – Amir

+0

我不知道。有沒有辦法看到發佈的值? – Abhijit

+0

迴應你的$ locationData,檢查你是否收到任何東西。 – Amir

回答

0

的方法你可以試一下

//js file 
    $.ajax({ 
     url: "You_url", 
     type: "POST", 
     data: $("#form_name").serialize(), 
     headers: { 
      'Authorization' : 'JWT ' + token 
     } 
    }) 
    .done(function (data) { 
     console.log(data); 
    }) 
    .fail(function (data) { 
     console.log(data); 
    }); 

和回聲後的數據在php文件中,如果你得到任何東西G。我正在使用JWT,所以我在這裏使用了JWT,令牌是我在其中存儲令牌的變量

+0

我用這個 '$就 \t \t({ \t \t類型:「POST」, \t \t網址: 「add_location.php」, \t \t數據:$( 「#locationForm」)序列化(), \t \t \t \t}); \t \t \t \t \t .done(功能(數據){ \t \t \t的console.log(數據); \t \t \t}); \t \t \t .fail(功能(數據){ \t \t \t的console.log(數據); \t \t});' 它表示上完成或錯誤部分或在網絡標籤未定義令牌 – Abhijit

+0

得到任何東西borwser? – Amir

+0

網絡選項卡上沒有任何內容,但在控制檯上,我收到一條錯誤消息。未定義的令牌 – Abhijit

0

我認爲您指的是錯誤的DOM ID。你可能有這個陣型。

<div id="inputDiv"> 
Location <input type="text" id="myInput"><br> 
</div> 

在這種情況下inputDiv = $('#inputDiv').val()將與inputDiv = $('#myInput').val()