14
1 TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG QUỐC TẾ ATHENA BÁO CÁO THC TP TUN Đề tài: Nghiên Cu Xây Dng Phn Mn Qun Lý Sinh Viên Trên Android TUN 5: XÂY DNG GIAO DIN TRÊN ANDROID. KT NI VI DATABSE TSEVER. SVTT: Ngô Thanh Tun Ngành: CNTT

Bao cao thuc tap tuan 5

Embed Size (px)

DESCRIPTION

báo cáo thực tập tuần 5.kết nối với databse thông qua web service

Citation preview

Page 1: Bao cao thuc tap tuan 5

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

Đề tài: Nghiên Cứu Xây Dựng Phần Mền Quản Lý Sinh Viên Trên

Android

TUẦN 5: XÂY DỰNG GIAO DIỆN TRÊN ANDROID. KẾT NỐI VỚI

DATABSE TỪ SEVER.

SVTT: Ngô Thanh Tuấn

Ngành: CNTT

Page 2: Bao cao thuc tap tuan 5

2

Android là 1 hệ điều hành di dộng mà nguỗn mở, nên việc chiếm quyền điều hành

hệ thống(root máy) đã trở nên rất dễ dàng và rất phổ biến, thậm chí nếu bạn đang

dùng 1 smartphone android xách tay hoặc là hang chính hãng nhưng đã root . thì

việc truy cập tất cả các dữ liệu trong máy cũng là điều rất dễ dàng. Do vậy đối với

các úng dụng đòi hỏi bảo mật cao như ứng dụng quản lý sinh viên. Thì databse

không thể nằm trên điện thoại di dộng của người sử dụng(ỡ đây chì có quyền xem).

Do đó em quyết định đưa databse vào 1 web server client(các smartphone android),

chí có quyền truy xuất dữ liệu được cho phép từ server và xem chúng. Client vào

dataset sẽ kết nối với nhau thông qua web service.về phía client việc gữi nhận dữ

liệu sẽ được đóng gói trong đối tượng json(JavaScript Object Notation). Đây là

đối tượng được định dạng trao đỗi dữ liệu độc lập.

Sau đây là các bước tiến hành kết nối client với web server. Toàn bộ em sẽ xây

dựng môi trường giả lập trên PC.

Page 3: Bao cao thuc tap tuan 5

3

1,cài đặt và thiết lập môi trường client-server trên PC

1.1cài đặt môi trường sever

Vì nhiều lí do, nên em không sử dụng VPS. Em sẽ sử dụng pc để tao môi trường sever ảo

cho ứng dụng của mình.

Xampp là chương trình tạo máy chủ Web (Web Server) trên máy tính cá nhân Localhost)

được tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ như

PHPmyadmin.

Tải và cài đặt xammp:

http://www.apachefriends.org/en/xampp-windows.html

Chạy chương trình cài đặt XAMPP Installer, khi xuất hiện bảng chọn ngôn ngữ,

chọn English và nhấn Ok.

Khi xuất hiện bảng Welcome to the Xampp Setup Wizard, nhấn Next.

Trong License Agrement chọn I accept the Agreement, nhấn Next.

Trong Select Destination Location, chọn nơi cài đặt Xampp. Lưu ý ở bước này nên

chọn ổ dĩa khác với ổ dĩa cài Windows để sau này dễ cài đặt cấu hình cho Wampp.

Chọn đường dẫn là D:\xampp (cài trên thư mục xampp của ỗ dĩa D), nhấnNext.

Trong XAMPP Options, để nguyên mặc định của Xampp và nhấn Install.

Chương trình sẽ tiến hành cài đặt và sau cùng nhấn Finish để kết thúc việc cài đặt,

chương trình sẽ hỏi bạn có muốn mở bảng điều khiển của Xampp hay không, hãy

chọn No vì chúng ta cần chỉnh thêm một vài thông số nữa.

Thiết lập cấu hình cho server

Mở bảng điều khiển của chương trình Xampp bằng cách nhấn đúp chuột vào

Icon XAMPP Control Panel nằm trên Desktop

Bạn ấn vào dấu x phía bên trái để install service, ở đây ta chỉ cần MySQL và

apache là đủ. Sau đó bạn nhấn vào start để chạy các service này.

Page 4: Bao cao thuc tap tuan 5

4

Xây dựng database bằng MySQL

Sau khi bạn run 2 servive là MySQL và apacahe từ control panel của chương trình

xammp. Bạn vào trình duyệt vào đi đến địa chỉ sau:

http://localhost/phpmyadmin

Page 5: Bao cao thuc tap tuan 5

5

. chọn databasenhập tên databse vào ở đây mình chọn là sinhvienmanager chọn

create.

Database đã tạo xong. Bây giờ mình tiếp tục tạo bảng table, các table này sẽ lưu trữ các

dữ liệu người dùng thong tin sinh viên cho ứng dụng. để cho thuận tiện phần tạo bảng

này mình dã đính kém sẵn trong file code SQL. Bạn chỉ việc import vào và chọn go để

My SQL xử lý.

Các câu lệnh import thành công. MySQL sẽ hiện như trên và bạn để ý phần databse mình

vừa tạo đã có các bảng dữ liệu được thêm vào.

Page 6: Bao cao thuc tap tuan 5

6

1.2 cài đặt môi trường client

Môi trường client là các smartphone của người dùng có cài đặt úng dụng quản lý sinh

viên. Em dùng phần mềm Genymotion để giả lập môi trường máy ảo android trên PC.

Các công cụ cần có

Để cài đặt được máy ảo Android Genymotion trên PC của mình thì bạn cần có các công

cụ sau :

- Bộ cài Genymotion tải về : tại đây

- VirtualBox tải về tại đây: tại đây

Cài đặt Đầu tiên là bạn nên có 1 tài khoản Genymotion đăng ký Tại đây.

Sau khi đã có 1 tài khoản thì bạn tiến hành cài đặt Genymotion lên PC của mình. Các

bạn cứ next cho tới khi hoàn thành quá trình cài đặt.

Sau khi cài xong Genymotion bạn tiến hành cài đặt VirtualBox. Việc cài đặt hoàn toàn

như bình thường khi các bạn cài đặt các phần mềm trên PC.

Page 7: Bao cao thuc tap tuan 5

7

Sau khi hoàn thành sau việc cài đặt 2 phần mềm trên bạn khởi chạy Genymotion

Click vào Add để thêm mới máy ảo Android.

Tại đây bạn ấn vào connect và đăng nhập bằng tài khoản bạn đã đk ở trên để chọn máy

android.

Page 8: Bao cao thuc tap tuan 5

8

Sau khi đăng nhập danh sách máy ảo android sẽ hiện ra. Bạn tùy chọn máy ảo mà mình mong muốn.sau

đó chọn next để tiến hành download máy ảo xuống.

Cuối cùng bạn đã hoàn tất quá trình cài đặt máy ảo client cho úng dụng.

1.3.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à “android_login_api”. Trong thư mục

hthocs của thư mục cài đặt xammp. C:\xampp\htdocs\android_login_api.

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. riêng đối với xammp khi ta cài

đặt mặc định thì user là root và password để trống.

Page 9: Bao cao thuc tap tuan 5

9

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

define("DB_HOST", "localhost");

define("DB_USER", "root");

define("DB_PASSWORD", "");

define("DB_DATABASE", "qlsinhvien");

?>

<?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() {

mysql_close();

}

}

?>

Page 10: Bao cao thuc tap tuan 5

10

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.

Cuối cùng ta tạo 1 class index. Class này sẽ nhận các tag, tương trưng cho các tag lệnh

được gũi từ client, rồi gọi hàm xử lý tương ứng. ta sẽ dùng phương thức post và get để

nhận các tag.

class DB_Functions {

private $db;

function __construct() {

require_once 'DB_Connect.php';

$this->db = new DB_Connect();

$this->db->connect();

}

function __destruct()

{ }

//viết các hàm xử lý người dụng tại đâ, bao gồm hàm lấy dữ

//liệu, update dữ liệu …tùy vào tính năng của ứng dụng ở

//phía client.

}

Page 11: Bao cao thuc tap tuan 5

11

<?php

if (isset($_POST['tag']) && $_POST['tag'] != '')

{

$tag = $_POST['tag'];

require_once 'include/DB_Functions.php';

$db = new DB_Functions();

$response = array("tag" => $tag, "success" => 0,

"error" => 0);

}

Else if ($Tag==”?”){//do something here}

else {

echo "Access Denied";

}

>

Page 12: Bao cao thuc tap tuan 5

12

2.Giao diện ứng dụng

2.1 Tính năng login và changepassword.

ở phần báo cáo này em chỉ mới thục hiện bước kết nối với database với server. khi khởi

dộng ứng dụng sẽ xuất hiện màn hình đăng nhập , yêu cầu người dùng nhập email và mật

khẩu kết nối.

Sau khi đăng nhập thành công sẽ chuyễn sang màn hình tùy chọn chức năng

Nếu người dùng chọn đỗi mật khẩu thì sẽ chuyển sang layout đổi mật khẩu

Page 13: Bao cao thuc tap tuan 5

13

Tại đây nhập các thong tin yêu cầu và mật khẩu mới, lưu ý mật khẩu phải đúng mới tiến

hành đổi pass được

Page 14: Bao cao thuc tap tuan 5

14