2011-04-05 57 views
2

如果我正在創建一個'ajaxified'用戶界面,其中包含許多Ajax調用來創建,重命名,刪除我的頁面上的各種內容 - 處理所有這些「代碼的最佳方式是什麼?在「ajax頁面?起初,我爲每個調用都有一個不同的.php文件(即Candy_Rename.php,Candy_Delete.php)。但是,我發現我的代碼庫變得壓倒多數的文件創建。如何在一個頁面上運行多個Ajax調用

現在我發送一個「command」參數與我的請求,然後我在一個文件「ajax_Candy.php」中管理與Candy相關的所有事情。所以例如我的jQuery請求將是:

$.get('ajax_Candy.asp', { command: 'insert', candyName: 'Jolly Ranchers' }, function (response) { 
    alert(response.candyId); 
} 

這是一個很好的方式去了解它嗎?

編輯:所有的答案都很好,並說了幾乎相同的東西。我必須選擇一個,我認爲提到安全性對於沿着這條道路前進的任何其他人來說都很重要 - 所以你去了。我正在用一個用戶提到的switch語句。

+0

'ajax_Candy.asp'? – 2011-04-05 22:35:23

回答

2

假設您正在處理服務器端的安全問題,我沒有看到您的方法有問題。 PHP文件必須確保請求者有權執行該命令。您不希望用戶刪除您的所有記錄...

2

當然,你現在在做什麼是一個更好的方法。 只有一個控制所有操作的文件。 我通常在命令上使用switch語句來保持所有內容的清潔。

switch($_GET[command) 
{ 
    case 'insert' : do insert stuff; break; 
    case 'delete' : do delete stuff; break; 
} 
+0

你能解釋一下嗎?什麼是$ _GET [命令],什麼是插入和刪除的情況下,你可以舉例說明? – 2012-11-26 23:21:47

0

是的,那會更好。許多文件沒有錯,但是你應該努力將相關的功能保持在一起 - 高度凝聚力。

但是不要太過火,讓一個php文件處理的不僅僅是糖果。如果你開始在你的php文件中找到代碼重複,開始子類化。

相關問題