2017-10-10 39 views
2

我有一個應用程序根的類文件,在那個類中我有一個public function deleteUser方法。我想通過ajax從前端調用該方法。我所看到的例子是這樣的:ajax觸發面向對象的方法進行刪除

$.ajax({ 
      url: '/deleteUser.php', 
      type: 'DELETE', 
      success: function(){ 
       alert('cat deleted'); 
      } 
     }); 

但什麼是拋我了是我沒有一個PHP文件,只是沒有刪除代碼(deleteCat.php在這上面的例子)。我有我的班級內刪除代碼。如何在不使用url:XX的情況下從ajax觸發一個類中的確切方法?在你的Ajax功能上傳一個JSON像

使用數據:

數據:

+3

AJAX不會觸發類或方法,它會像處理其他任何HTTP請求一樣向PHP文件發出請求。你將有*服務器端代碼執行你想要的邏輯。 – David

+0

所以如果你有一個很大的應用程序,並且你想在其中觸發一個簡單的方法,你必須爲該類方法創建一個文件?這對我來說似乎很奇怪。 – HollerTrain

+0

誰說你必須爲每種方法創建一個單獨的文件?這對我來說確實也很奇怪。但是你*需要向某個PHP文件發出HTTP請求,這會執行你的服務器端代碼。 – David

回答

0

你能做到這一點{ '類型': '刪除'}

然後將類型設置爲POST

在你的PHP文件做

If ($_POST['data']['type'] == 'delete') { 
    delete(); 
} 
+0

你的回答是不正確的,在這裏檢查https://stackoverflow.com/questions/2153917/how-to-send-a-put-delete-request-in-jquery – mega6382

+0

不。'DELETE'是一個Http Verb'設計'刪除服務器上的資源。所以使用它沒有錯...... – Jeff

+0

謝謝,不知道。編輯我的答案。 – SIMDesign

0

嘗試的方法裏以下:

if($_SERVER['REQUEST_METHOD'] == "DELETE") 
{ 
    //Delete query here 
} 

這將確定該請求是否是類型Delete與否。如果是這樣,你可以調用你的刪除查詢。但要確保調用該方法,僅僅定義它是不夠的。