1. 1
TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN
NINH MẠNG QUỐC TẾ ATHENA
BÁO CÁO THỰC TẬP TUẦN 4
Đề tài: Nghiên cứu xây dựng phần mền quản lý khách hàng trên
Android
SVTT: Trần Văn Nam
Ngành: CNTT
2. 2
I. Cách xử lý lưu trữ và lấy dữ liệu theo mô hình client - server:
1. Mô hình client - server trong android:
- Client: là các máy khách hay ở đây chính là các thiết bị di động chạy hệ
điều hành android.
- Server: chính là database và một giao thức trung gian.
- Giao thức trung gian (HTTP): là một cầu nối trung gian để tiếp nhận yêu
cầu và trả lại kết quả của thiết bị và database. Hiện tại phổ biến nhất là sử
dụng PHP.
2. Một ví dụ đơn giản về mô hình client - server trong android:
- Người dùng sử dụng 1 thiết bị android, chạy một ứng dụng nào đó.
- Người dùng đăng ký 1 tài khoản trên thiết bị, và thông tin này được lưu trữ
trên server.
- Người dùng thực hiện việc đăng nhập - thiết bị sẽ gửi một yêu cầu đăng
3. 3
nhập với email và password lên server để kiểm tra nếu đúng thì chuyển qua
chức năng nào đó như thông tin cá nhân ... nếu sai thì thông báo không thành
công..
- Người dùng sử dụng một thiết bị khác để đăng nhập và tất nhiên cũng sẽ
đăng nhập được.
- Trên thiết bị cũng sẽ có 1 database cục bộ lưu dữ thông tin người dùng vừa
đăng nhập, và khi logout thì delete tất cả.
- Và tất nhiên tất cả dữ liệu của người dùng đều được lưu trữ trên server.
Sau khi cài đặt thành công mở trình duyệt vào "http://localhost/phpmyadmin"
để khởi tạo cơ sở dữ liêu sử dụng trong ứng dụng.
Trên thanh menu ngang, chọn mục SQL để khởi tạo database
Create database qlkh
Sau khi khởi tạo thành công, chọn click vào tên database vừa khởi tạo rồi
tiếp tục chọn mục SQL để khởi tạo table:
Các bảng thuộc tính trong bảng khách hàng
CREATE TABLE KHACHHANG (
MAKH char(4) primary key not null,
HOTEN varchar(40) not null,
DCHI varchar(50) not null,
SODT varchar(20) not null,
NGSINH date not null,
NGDK date not null,
DOANHSO int(20) not null
);
CREATE TABLE SANPHAM(
MASP char(4) primary key not null,
TENSP varchar(40) not null,
DVT varchar(20) not null,
NUOCSX varchar(40) not null,
GIA int(20) not null
);
4. 4
CREATE TABLE HOADON(
SOHD int primary key not null,
NGHD date not null,
MAKH char(4),
MANV char(4) not null,
TRIGIA int(20) not null,
FOREIGN KEY(MAKH) REFERENCES KHACHHANG(MAKH),
FOREIGN KEY(MANV) REFERENCES NHANVIEN(MANV)
);
CREATE TABLE CTHD(
SOHD int primary key not null,
MASP char(4) primary key not null,
SL int,
FOREIGN KEY(SOHD) REFERENCES HOADON(SOHD),
FOREIGN KEY(MASP) REFERENCES SANPHAM(MASP)
);
3. Bảng User để cấp tài khoản để xem thông tin bảng:
create table users(
uid int(11) primary key auto_increment,
unique_id varchar(23) not null unique,
name varchar(50) not null,
email varchar(100) not null unique,
encrypted_password varchar(80) not null,
salt varchar(10) not null,
created_at datetime, updated_at datetime null );
5. 5
II. Xây dựng Web service trung gian giữa client và server
Để có thế kết nối client với server tất nhiên các client chạy android không thể kết
nối trực tiếp, phải thông qua 1 web service. Web service này sẽ nhận các yêu cầu
từ client, xử lý và truy vấn tới databse của server.
Tao 1 folder tên bất kỳ ví dụ ở đây mình lấy tên là “qlkh”. Trong thư mục hthocs
của thư mục cài đặt xammp. C:xampphtdocsqlkh.
Kế đến trong thư mục android_login_api mình sẽ tạo 1 folder include, folder này
sẽ chứa cái class php phục vụ cho việc kết nối và xử lý thông tin từ client.
Tao 1 file php có tên là config.php, class này có nhiệm vụ khai báo cac thông tin
kết nối với server bao gồm host, user, password, database name.
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "qlsinhvien");
?>
Tiếp đến da sẽ tạo 1 class DB_Connect.php. class này sẽ thực hiện việc kết nối
database.
<?php
class DB_Connect {
function __construct() { }
function __destruct() { }
public function connect() {
require_once 'include/config.php';
$con = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
mysql_select_db(DB_DATABASE);
return $con;
}
public function close() {
6. 6
mysql_close();
}
}
?>
Cuối cùng ta sẽ tạo 1 class chứa các hàm xử lý yêu cầu của phía client.
class DB_Functions {
private $db;
function __construct() {
require_once 'DB_Connect.php';
$this->db = new DB_Connect();
$this->db->connect();
}
function __destruct()
{ }
III. Hình ảnh ứng dụng demo:
Trang đăng nhập:
Đăng nhập thành công sẽ truy cập tới menu quản lý khách hàng.