簡體   English   中英

cakephp注冊和登錄表單

[英]cakephp registration and login form

我正在使用cakephp進行注冊和登錄表單。 我是cakephp框架的新手。 我已經在我的系統上下載並安裝了cakephp。 我已經連接到我的數據庫表。 我在core.phpdatabase.php做了一些改動。

我正在按照這些教程進行注冊和登錄表單。

http://alvinalexander.com/php/cakephp-user-registration-form-example-recipe

http://www.grasphub.com/2013/01/simplest-registration-form-in-cakephp/

http://karven.wordpress.com/2009/07/30/create-simple-user-authentication-using-cakephp-auth-component/

我試過了。 但它們都不起作用。 我不知道我需要在哪里創建這些php文件。 我也是MVC設計模式的新手......這里有人給我一些一步一步的程序來完成這個簡單的任務..我在這里不要求任何編碼..我想要一步一步的程序..

它可能看起來有點難,但當你理解它的方案時,它變得非常簡單:

  • 模型層處理有關數據的所有內容。 它將靜默連接到模型中變量“useDbConfig”中聲明的數據庫配置(如果未聲明,它將連接到default配置)。 它們存儲在Models文件夾中。 “處理有關數據的一切”意味着它從數據源獲取數據,驗證將保存的數據,格式化數據等。

    模型可以附加behavior 將其視為OOP術語中的“界面”(不一樣,但有點接近)。 它們在它們之間提供了通用功能(例如, TranslateBehavior使該模型的數據可以翻譯)。 它們存儲在Models/Behavior文件夾中。 您可以在數組變量$actsAs調用它們,或者即時加載它們。 例如:

     public $actsAs = array('Translate'); 
  • 控制器層處理將對數據執行的所有操作。 它將以與控制器相同的名稱靜默實例化模型以處理數據,但您可以告訴控制器實例化多種不同的模型以滿足您的需求。 它們存儲在Controllers文件夾中。 通常,控制器中的函數稱為actions ,因為在服務器中處理HTTP請求時,它將被委派給控制器中的相應函數。 比如, http://www.example.com/users/login將在UsersController調用您的操作login()

    控制器可以附加component 它與behavior相同,但專門針對控制器。 它們存儲在Controllers/Components文件夾中。 例如, PaginationComponent使得在控制器中獲取的數據具有可分頁性,因此您可以對其進行排序,按頁面划分等。您可以在變量$components調用它,或者在運行時加載它。 例如:

     public $components = array('Paginate'); 
  • 視圖層處理您的所有演示文稿。 這意味着他們擁有用戶將看到的所有HTML + Javascript。 在解決操作后從控制器調用它。 它默默地呈現View/ControllerName/action.ctp的視圖,這意味着,例如,當login()動作完成時,它將呈現視圖View/Users/login.ctp 視圖通常使用布局default進行渲染,但您可以在控制器內的變量$layout更改它。 您可以通過控制器中的函數$set()將變量從控制器傳遞到視圖。

    視圖可以使用helpers ; 它們與組件和行為相同,但對於視圖。 但是你必須在變量$helpers中在控制器中聲明它們。 它們存儲在Views/Helpers文件夾中。 例如,默認的HtmlHelper可以讓您更輕松地制作一些標簽,例如css的<img><a><script><link>

    視圖也可以使用元素。 它們是一種可以在任何視圖或布局中重用的塊。 您只需在Views/Elements文件夾中創建一個元素,並將它們與$this->element('nameOfTheElement');

總之,對於登錄,您將需要User.php模型, UsersController.php控制器和login.ctp視圖。 在控制器中,您需要加載AuthComponent ,因為它將處理登錄。 在視圖中,您可能需要HtmlHelperFormHelper ,但默認情況下會加載它們。 在控制器的login()函數中,您只需檢查Auth->login()成功,並采取適當的操作。

一旦你更有經驗,你可以看一下名為fat models, skinny controllers的慣例fat models, skinny controllers更有條理。

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM