2014-09-06 89 views
0

我有一個問題,我一直在試圖處理過去幾天。它開始困擾我.. 我似乎無法讓我的AJAX調用工作。我有一個簡單的表單,我試圖將參數發送到一個PHP腳本,但它不斷給我一個錯誤。Ajax調用PHP腳本失敗

$("#submitRSS").click(function() { 

     var newspaper_id = $("#aviser").find('option:selected').attr("newspaper_id"); 
     var kategori_id = $("#kategorier").find('option:selected').attr("category_id"); 
     var url = $("#urlRSS").val(); 
     var content = $("#contentRSS").val(); 
     var image = $("#imageRSS").val(); 

     $.ajax({ 
       url:'insert_crawler_RSS.php', 
       type:'GET', 
       data:{'newspaper_id':newspaper_id,'kategori_id':kategori_id,'url':url,'content':content,'image':image}, 

       success: function (res) { 
        $("#message").append('<div class="alert alert-success" role="alert">Godt arbejde!</div>'); 
       }, 
       error: function() { 
        //$("#message").append('<div class="alert alert-danger" role="alert">Noget gik galt :(</div>'); 
        alert("error"); 
       } 

     }); 

    }); 

這是insert_crawler_RSS.php:

if(isset($_GET['newspaper_id'])) { 
     $newspaper_id = $_GET['newspaper_id']; 
    } 

    if(isset($_GET['kategori_id'])) { 
     $category_id = $_GET['kategori_id']; 
    } 

    if(isset($_GET['url'])) { 
     $url = $_GET['url']; 
    } 

    if(isset($_GET['content'])) { 
     $content = $_GET['content']; 
    } 

    if(isset($_GET['image'])) { 
     $image = $_GET['image']; 
    } 

    mysqli_query($con,"INSERT INTO crawler_urls (url,newspaper_id,rss,category_id) VALUES('$url','$newspaper_id','1','$category_id')"); 
    mysqli_query($con,"INSERT INTO crawlers (content_xpath,newspaper_id,image_xpath) VALUES('$content','$newspaper_id','$image')"); 

有誰知道什麼是錯?請幫幫我。我真的很感激它:)

+1

你有什麼錯誤?開發者控制檯說什麼? – 2014-09-06 14:20:06

+0

如果這是一個你不妨礙默認瀏覽器提交的表單,請使用'preventDefault()'或返回'false' – charlietfl 2014-09-06 14:36:29

+0

charlieftl!這解決了我的問題! :)非常感謝 - 我如何接受你的答案? – 2014-09-06 19:21:12

回答

-1
  1. 嘗試把完整的URL從HTTP開始:// ...

  2. 你並不需要把''數據部分內。你可以不喜歡它:

    數據:{newspaper_id:newspaper_id,kategori_id:kategori_id,網址:網址,內容:內容,圖片:圖片}

  3. 對於調試;改變你的錯誤函數:

    錯誤:函數(XHR,textStatus,errorThrown){ 警報(XHR + 「」 + textstatus + 「」 + errorThrown);}

這樣你就可以看看你的代碼有什麼問題。

+0

OP在服務器上使用$ _GET,因此將ajax類型設置爲「post」是沒有意義的,並且肯定會失敗 – charlietfl 2014-09-06 14:35:19

+0

不知道在PHP中如此工作,編輯過這篇文章。 – Emre 2014-09-06 14:48:20

+0

嗨Emre.Your的建議並沒有解決我的問題,不幸的是:(你提到的錯誤功能不會提醒任何東西 – 2014-09-06 17:41:59