2011-04-11 52 views
0

我開始學習有關php的類,並想知道如何能夠調用一個類中的函數,但在url字段中使用它的ajax。AJAX使用php類

基本上,我有:

$(document).ready(function(){ 
    $('#submit').click(function(e) { 
     $.ajax({ 
      type : 'POST', 
      url : 'addCustomer.php', 
      dataType : 'json', 
      data:{ 
       lastName : $('#add_LN').val(), 
       firstName : $('#add_FN').val(), 
       phone : $('#add_PN').val(), 
       dob : $('#add_DOB').val() 
      }, 

什麼我addCustomer.php確實是創造我的課「customer_module」的一個實例,然後customer_module內調用函數。

但我想擺脫addCustomer.php所有在一起,只需調用customer_module.php函數。這個函數名稱將是addCustomer($ last_name,$ first_name,$ phone,$ dob)。

customer_module.php

class customer_module 
    { 

     public function addCustomer($last_name, $first_name, $phone, $dob) 
     { 
... 
     } 

    } 

我應該改變我的AJAX功能是什麼樣子?

回答

1

你不能這樣做,你總是需要一個包裝。有像Kohana這樣的PHP框架(派生自CodeIgniter),可以將這種類型的URL映射到函數和類中,但這非常困難,在您的情況下,繼續使用addCustomer.php解決方案會更好。

0

直接,因此,我不知道從AJAX直接調用類的成員的方式。幾乎總是有某種包裝。也就是說,編寫包裝器相當容易,因此它可以將函數的名稱作爲參數調用,因此可以使用一個包裝函數調用多個函數。如果您這樣做,我強烈建議您只允許它訪問指定的功能列表(以防止某些類型的網絡攻擊)。