2013-10-26 53 views
0

我想在本地計算機和遠程計算機上觸發事件。該事件是從XML到SQL-DB的導入。 進口需要約5secs。現在的問題是導入在localhost機器上運行良好,但在遠程機器上運行得不好。如果導入在遠程機器上的遠程機器上被觸發,它也運行良好。 在FF-Webdevoloper工具中,我可以看到本地計算機上的事件正在浪費大約5秒,而遠程計算機上的事件正在浪費1秒。 結果是,並未將整個XML導入到數據庫中。我猜測導入浪費了很多時間,這在jquery ajax函數導入過程中發生。任何想法如何解決這個問題?jquery ajax - 在遠程計算機上觸發的事件在1秒後中止

這裏是我的功能代碼:

function Zurueck(){ 
// fired event on localhost 
    $.ajax({ 
     url: "zurueck.php", 
     data: {encoder : encoderID, tabelle: Tabelle}, 
     datatype: "json", 
    type: "POST", 
     success: function(data) { 
} 
    }); 

// same fired event on remote machine 
    $.ajax({ 
    // pfad zur PHP Datei (ab HTML Datei) 
     url: "http://192.168.2.151/backend/zurueck.php", 
     data: {encoder : encoderID, tabelle: Tabelle}, 
     dataType: "json", 
    type: "POST", 
     success: function(data) { 
} 
    }); 
} 

,這裏是本地和遠程程序代碼:

<?php 
$xml = simplexml_load_file('TEST.XML'); 
//..... 
// do something, and so on 
?> 

回答

0

如果真的是用腳本問題,通過瀏覽器被取消,然後您可以嘗試使用ignnore_user_abort php函數。

但我認爲你應該檢查在服務器端是否沒有其他問題停止導入。也許它只是在一些像內存不足這樣的錯誤上安靜地失敗,或者它被配置爲只給腳本5秒(可能會奇怪,非標準,但可能發生 - 查看php.ini中的max_execution_time或phpinfo()結果)。

+0

max_execution_time是120秒,這應該不是問題。 在服務器端,沒有問題。腳本運行良好,如果它沒有jquery axaj調用執行。我會嘗試php忽略。 – Mazl

+0

非常感謝。 ignore_user_abort似乎是解決方案。 – Mazl

相關問題