2012-11-22 15 views
1

我最近和Java EE一起工作,並且喜歡struts.xml的概念,我可以根據操作類的返回字符串來處理重定向。php調用類在單獨頁面中的功能

在PHP中,在我的新開發中的站點中,我試圖遵循沒有使用從互聯網使用的MVC框架的MVC標準。所以我創建了控制器,模型和視圖(現在爲空)。我真正堅持的唯一事情是當我在視圖中提交表單(insert_product.php)時,我將需要創建另一個php頁面來處理髮布數據並將它們傳遞給控制器​​。

無論如何避免創建這些網頁,也許有像struts.xml的東西?即使我可以將數據直接發佈到控制器類,那也不錯。

+0

既然你已經決定使用MVC標準,爲什麼你要使用任何PHP-MVC框架,比如Zend,CI,Symphony .. –

+0

我使用了codeigniter,並且能夠提供良好的功能。但我無法將購物車與它作爲核心要求。 –

+0

在Codeigniter中構建購物車應該是一個非常簡單的練習。只是說... – deceze

回答

1

請求週期是:

  | 
browser ---|---> Controller ---+ 
     request     | 
^  |      V 
    |  | 
    |  |     Model 
    |  | 
    |  |      | 
    +--------|------ View <------+ 
     response 
      | 
    client |  server 

正如你看到的,MVC分離是完全在服務器端代碼的組織策略。你不需要需要單獨的文件。任何GET或POST請求都由控制器處理,視圖只是返回響應(即HTML)。控制器如何處理傳入請求以及哪個控制器處理哪些請求完全取決於您,它與任何特定文件無關。

1

當我提交表單鑑於

這是從一個程序員發生第一起網絡的發展,從其他發展領域一個正在添加典型的場景。

您不會在視圖中提交表單。用戶請求一個新的頁面額外信息..

但請注意,用戶不能不在乎你的看法。用戶的瀏覽器將獲得一些代碼,然後解釋並生成一個頁面。用戶頁面和你的視圖(在這種情況下的MVC)是兩個完全不同的東西!

用戶向您的服務器發送的請求可能(或不可能)包含額外信息(POST/GET)。

也就是說,控制器應該得到的信息。然後將它傳遞給模型,如果它是相關的。