Khi học CakePHP bạn có thể dễ dàng làm việc với Cơ sở dữ liệu (Database). Bằng cách thêm các chức năng thêm, sửa, xoá và cập nhật. Trong bài viết này bạn sẽ được hướn dẫn xây dựng chức năng thêm thành viên với CakePHP.
Tạo Database tên là data, tiếp theo thêm mã MySQL vào data
CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL, `password` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE = InnoDB AUTO_INCREMENT = 7 DEFAULT CHARSET = latin1
Bước 1: Tạo tập tin tên là UsersController.php tại C:xampphtdocscakephpsrcController
<?php namespace AppController; use AppControllerAppController; use CakeORMTableRegistry; use CakeDatasourceConnectionManager; use CakeAuthDefaultPasswordHasher; class UsersController extends AppController{ public function add(){ if($this->request->is('post')){ $username = $this->request->data('username'); $hashPswdObj = new DefaultPasswordHasher; $password = $hashPswdObj->hash($this->request->data('password')); $users_table = TableRegistry::get('users'); $users = $users_table->newEntity(); $users->username = $username; $users->password = $password; if($users_table->save($users)) echo'<script language="javascript">alert("Thêm thành viên viết thành công!");</script>'; } } }
Bước 2: Tạo tập tin add.ctp tại C:xampphtdocscakephpsrcTemplateUsers
<?php echo $this->Form->create("Users",array('url'=>'/users/add')); echo $this->Form->input('username'); echo $this->Form->input('password'); echo $this->Form->button('Submit'); echo $this->Form->end(); ?>
Bước 3: Cấu hình là routes.php tại C:xampphtdocscakephpconfig
$routes->connect('/users/add', ['controller' => 'Users', 'action' => 'add']);
Sau khi thực hiện xong bạn nhấp vào đăng ký sau đó ghé thăm bảng users bằng cách truy cập vào http://localhost/phpmyadmin/ để kiểm tra xem liệu thành viên đã được đăng ký chưa.