Đăng ký Đăng nhập
Trang chủ Xây dựng ứng dụng quản lý shipping cho công ty vận chuyển khánh thịnh thái nguyê...

Tài liệu Xây dựng ứng dụng quản lý shipping cho công ty vận chuyển khánh thịnh thái nguyên

.PDF
91
263
113

Mô tả:

LỜI CẢM ƠN Trước tiên em xin gửi lời cám ơn chân thành sâu sắc tới các thầy cô giáo trong trường Đại học Công Nghệ Thông Tin Và Truyền Thông nói chung và các thầy cô giáo trong khoa Công Nghệ Thông Tin, bộ môn Truyền thông & Mạng máy tính nói riêng đã tận tình giảng dạy, truyền đạt cho em những kiến thức, kinh nghiệm quý báu trong suốt thời gian qua. Đặc biệt em xin gửi lời cảm ơn đến cô giáo ThS. Dương Thúy Hường đã tận tình hướng dẫn, trực tiếp chỉ bảo em trong suốt thời gian làm đề tài.Trong thời gian làm việc với cô, em không những tiếp thu thêm nhiều kiến thức bổ ích mà còn học được tinh thần làm việc,thái độ nghiên cứu khoa học nghiêm túc,hiệu quả. Đây là những điều rất cần thiết cho em trong quá trình học tập và công tác sau này. Do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức mình nhưng đề tài của em khó tránh khỏi những thiếu sót. Em rất mong nhận được những ý kiến đóng góp của quý thầy Cô và các bạn để đề tài của em được hoàn thiện hơn. Một lần nữa em xin chân thành cảm ơn! Thái nguyên, tháng 6 năm 2016 Sinh viên Hoàng Bích Thuận 1 LỜI CAM ĐOAN Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của riêng cá nhân tôi, không sao chép lại của người khác. Trong toàn bộ nội dung của luận văn, những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp. Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình. Thái nguyên, tháng 6 năm 2016 Sinh viên thực hiện Hoàng Bích Thuận 2 MỤC LỤC DANH MỤC HÌNH ẢNH Hình 2.1: Usecase tổng quát 27 Hình 2.2: Biểu đồ UC của gói UC Đăng ký, đăng nhập.27 Hình 2.3: Biểu đồ UC của gói UC Quản lý thông tin cá nhân 28 Hình 2.4: Biểu đồ UC của gói quản lý danh sách thành viên 3 28 Hình 2.5: Biểu đồ UC của gói quản lý danh mục các tuyến đường 29 Hình 2.6: Biểu đồ UC của gói đặt đơn dịch vụ 29 Hình 2.7: Biểu đồ UC của gói tiếp nhận và xử lý đơn dịch vụ 30 Hình 2.8:Các lớp biên 42 Hình 2.9: Biểu đồ hoạt động của UC Đăng ký thành viên Hình 2.10: Biểu đồ hoạt động của UC Đăng nhập 42 42 Hình 2.11: Biểu đồ hoạt động của UC Sửa thông tin cá nhân 43 Hình 2.12: Biểu đồ hoạt động của UC Quản lý danh sách thành viên 43 Hình 2.13: Biểu đồ hoạt động của UC Ship hàng, tiếp nhận và xử lý đơn dịch vụ 44 Hình 2.14: Biểu đồ tuần tự của UC Đăng ký thành viên 45 Hình 2.15: Biểu đồ giao tiếp của UC Đăng ký thành viên 45 Hình 2.16: Biểu đồ tuần tự của UC Đăng nhập 46 Hình 2.17: Biểu đồ giao tiếp của UC Đăng nhập 46 Hình 2.18: Biểu đồ tuần tự của UC Sửa thông tin cá nhân 47 Hình 2.19: Biểu đồ giao tiếp của UC Sửa thông tin cá nhân 47 Hình 2.20: Biểu đồ tuần tự của UC quản lý danh sách thành viên 48 Hình 2.21: Biểu đồ giao tiếp của UC quản lý danh sách thành viên 48 Hình 2.22: Biểu đồ tuần tự của UC tiếp nhận và xử lý đơn dịch vụ 49 Hình 2.23: Biểu đồ giao tiếp của UC Ship hàng 50 Hình 2.24: Biểu đồ lớp 50 Hình 3.1:Giao diện trang chủ 55 Hình 3.2: Bảng thông tin hóa đơn 56 Hình 3.3: Giao diện đăng nhậpkhách hàng 56 Hình 3.4: Giao diện chỉnh sửa thông tin cá nhân của khách hàng HÌnh 3.5:Giao diện chi tiết hóa đơn 57 Hình 3.6:Giao diện đăng nhập admin 58 Hình 3.7: Giao diện quản lý khách hàng 59 4 57 Hình 3.8: Giao diện hiển thị danh sách khách hàng Hình 3.9: Giao diện quản lý shipper 60 Hình 3.10: Giao diện quản lý địa điểm 60 59 Hình 3.11: Giao diện quản lý các tuyến đường 61 Hình 3.12 Giao diện quản lý danh sách hóa đơn 61 Hình 3.13a: Giao diện chi tiết hóa đơn 62 Hình 3.13b: Giao diện chi tiết hóa đơn đã được phân công 62 Hình 3.13c: Giao diện chi tiết hóa đơn báo bận 63 Hình 3.14:Giao diện hiển thị danh sách hóa đơn cho shipper 64 Hình 3.15: Giao diện đăng nhập shipper 65 5 LỜI NÓI ĐẦU Hiện nay, công nghệ thông tin nói chung, công nghệ website nói riêng đã và đang có những bước phát triển nhanh chóng. Giúp cho con người giải phóng được sức lao động, giảm bớt thời gian cũng như công sức, tiền của mà vẫn quản lý cũng như hoàn thành tốt các công việc của mình. Không tách khỏi xu hướng chung đó, công việc vận chuyển hàng hóa cũng đã chịu ảnh hưởng lớn của công nghệ thông tin, từ quảng bá thương hiệu đến giúp tìm đường đi cộng với lịch trình đi sao cho phù hợp nhất, nhanh nhất mà không tốn tiền bạc nhất đều có sự trợ giúp của công nghệ thông tin. Nhưng vẫn còn đó những công ty vì tính đặc thù công việc nên vẫn chưa có được những ứng dụng hữu ích để phục vụ cho công việc của mình.Và công ty vận chuyển Khánh Thịnh –Thái Nguyên là một trong những công ty như vậy. Nhận thấy yêu cầu cấp thiết của công ty là cần phải có một ứng dụng shipper để quảng bá dịch vụ và quản lý đơn dịch vụ cũng như các nhân viên vận chuyển của công ty là rất lớn. Nên em quyết định chọn đề tài” Xây Dựng ứng dụng quản lý shipping cho công ty vận chuyển Khánh Thịnh-Thái Nguyên”. Bằng ngôn ngữ php và mysql 6 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1. Ngôn ngữ PHP 1.1.1. Giới thiệu và sử dụng ngôn ngữ PHP 1.1.1.1 Giới thiệu ngôn ngữ PHP a. Lịch sử ra đời Năm 1995, Rasmus Lerdorf tạo ra PHP nhằm giải quyết việc viết lặp đi lặp lại cùng đoạn mã khi tạo các trang. Ban đầu tác giả chỉ có ý định tạo bộ phân giải đơn giản để thay thế các thẻ lệnh trong file HTML bằng các đoạn mã lệnh viết bằng C. b. PHP là gì ? PHP là một công nghệ phía máy chủ (server – side) và không phụ thuộc môi trường (cross-platfom). Cả hai yếu tố này đều rất quan trọng. Khái niệm công nghệ phía máy chủ nói đến việc mọi thứ trong PHP đều xảy ra trên máy chủ (ngược với máy khách là máy của người dùng). Tính chất không phụ thuộc môi trường cho phép PHP chạy trên hầu hết các hệ điều hành như windows, Unix (và nhiều biến thể của nó), Macintosh…Một điều cũng rất quan trọng là các mã kịch bản PHP viết trên máy chủ này sẽ làm việc bình thường trên các máy chủ khác mà không cần chỉnh sửa hoặc chỉnh sửa rất ít. Mã PHP được thực thi ở phía Server, khi trình duyệt của người dùng truy cập một trang web có chứa một đoạn mã PHP thì trình duyệt nhận được trang kết quả đã xử lý từ Web server, người dùng sẽ không thể biết được đoạn mã viết gì. Mã PHP được bao trong cặp dấu hoặc . Tập tin PHP có phần mở rộng là .php hoặc .php3 PHP tương tự JSP và ASP với tập thẻ lệnh dùng cho trang HTML. Điểm đặc biệt là PHP được phát triển hoàn toàn cho nền tảng web,chính vì vậy, mà các ứng dụng viết bằng PHP rất ngắn gọn so với VBScript hay JSP. Đây cũng chính là 7 điểm mạnh của PHP so với Perl. Cú pháp PHP mượn từ nhiều ngôn ngữ khác như C, Java, Perl... PHP có thể giao tiếp với nhiều hệ CSDL như MySQL, MS Access, Sybase, Oracle và cả Microsoft SQL. Không chỉ có khả năng thao tác CSDL,PHP còn có nhiều khả năng khác như IMAP, SNMP, LDAP, XML... PHP chạy trên hầu hết các nền tảng hệ thống.Trình máy chủ phân giải mã lệnh PHP có thể tải về miễn phí từ trang web chính thức của PHP. Có lẽ yếu tố hấp dẫn nhất của PHP là nó hoàn toàn miễn phí. Với máy tính cấu hình vừa phải chạy Linux, cài đặt Apache, PHP và MySQL,bạn sẽ có máy chủ có thể phục vụ được nhiều ứng dụng web tương đối.Toàn bộ chi phí hầu như chỉ là thời gian bạn bỏ ra để cài đặt các phần mềm. PHP được xem là một thay thế cho Perl.PHP không thể làm được nhiều như Perl, thế nhưng chính sự hạn chế này làm cho PHP dễ học và dễ dùng. c. Tại sao cần dùng PHP? PHP được sử dụng để phát triển website động vì nó tốt, nhanh và dễ dàng nghiên cứu hơn các giải pháp khác. PHP có khả năng thực hiện và tích hợp chặt chẽ với hầu hết các cơ sở dữ liệu có sẵn, tính năng bền vững linh động và khả năng phát triển không giới hạn. Tất cả các đặc tính trên đều miễn phí vì PHP là mã nguồn mở. PHP vừa dễ với người mới sử dụng và vừa có khả năng làm được mọi thứ, đáp ứng yêu cầu của lập trình viên chuyên nghiệp. PHP được sử dụng càng ngày càng nhiều và mới đây đã bắt kịp ASP (vốn được xem là ngôn ngữ kịch bản phổ biến nhất hiện nay). PHP là modun thông dụng cho Apache (máy chủ Web phổ biến nhất) và nó đã có mặt trên 12 triệu website 1.1.1.2. Sử dụng PHP a) Thẻ PHP Có 4 loại khác nhau của thẻ PHP: 8 - Kiểu Short: là thẻ mặc định mà các nhà lập trình PHP thường sử dụng. - Kiểu định dạng XML: thẻ này có thể sử dụng với văn bản dạng XML. - Kiểu Script: trong trường hợp muốn sử dụng PHP như một script tương tự như khai báo Javascript hay VBScript - Kiểu ASP: <% echo “Đây là kiểu ASP”; %> b) Gọi hàm trong PHP Để gọi hàm trong PHP, khai báo tương tự như gọi hàm trong các ngôn ngữ lập trình khác,hầu hết các hàm khi gọi cần truyền tham số và giá trị trả về. VD: Gọi hàm date() c) Truy cập biến Form Thông thường khi cần lấy dữ liệu của người dùng nhập, chúng ta sẽ dùng thẻ form trong trang web nhằm ràng buộc tất cả các thẻ input, selec, textarea... Dữ liệu đến từ script đều là biến PHP, chúng ta có thể nhận biết chúng bằng cách sử dụng dấu $ trước tên biến. Có hai cách để truy cập dữ liệu trên form thông qua biến. - Để lấy giá trị của các thẻ trong form theo dạng POST: $_POST[‘tên_thẻ’] - Để lấy giá trị của các thẻ trong form theo dạng GET: $_GET[‘tên_thẻ’] d) Khai báo biến PHP Engine không cần yêu cầu khai báo biến trước khi sử dụng, tuy nhiên nên tập thói quen khai báo và khởi tạo giá trị ban đầu cho biến trước khi sử dụng chúng. e) Gán giá trị cho biến Để gán giá trị cho biến, nếu biến đó chưa khai báo trước đó, biến này được coi như vừa khai báo và khởi tạo. Trong trường hợp biến đã khai báo, biến này chỉ thay đổi giá trị. VD: f) Kiểu dữ liệu của biến trong PHP PHP hỗ trợ 5 kiểu dữ liệu - Interger: Sử dụng hầu hết cho giá trị có kiểu dữ liệu là số. - Double: Sử dụng hầu hết cho giá trị có kiểu dữ liệu là số thực. - String: Sử dụng hầu hết cho giá trị có kiểu dữ liệu là chuỗi, ký tự. - Array: Sử dụng hầu hết cho giá trị có kiểu dữ liệu là mảng có các phần tử cùng kiểu dữ liệu. - Object: Sử dụng hầu hết cho giá trị có kiểu dữ liệu là đối tượng của lớp. g) Phát biểu có điều khiển - Phát biểu If: Phát biểu if với một điều kiện, nếu điều kiện là true thì khối lệnh trong phát biểu If sẽ được thực hiện, điều kiện được khai báo trong dấu () VD: $a = 10; $b=6; if($a>$b) echo $a+$b; Khối lệnh trong bất kỳ phát biểu điều khiển nào cũng có thể sử dụng dấu { và }. Có 11 nghĩa là nếu khối lệnh trong phát biểu lớn hơn 1 thì phải sử dụng hai dấu trên. - Phát biểu Else: phát biểu else luôn là trường hợp ngược lại của phát biểu if với một điều kiện, nếu điều kiện là true thì khối lệnh trong phát biểu if sẽ được thực hiện, ngược lại khối lệnh trong phát biểu else sẽ được thực hiện. VD: $a = 10; $b=6; if($a>$b) echo $a+$b; else $b=$a+1; Tương tự như trong trường hợp phát biểu if, nếu khối lệnh trong phát biểu điều khiển else có hơn 1 dòng lệnh thì sẽ phải khai báo sử dụng dấu { và }. - Phát biểu Switch: tương tự như phát biểu if, nhưng trong trường hợp có nhiều hơn hai tùy chọn cụ thể cho phép quyết định. VD: switch($diem) { case “5”: echo “Điểm trung bình”; break; case “7”: echo “Điểm khá”; break; 12 case “10”: echo “Điểm giỏi”; break; deafault: echo “Nhập lại”; } Nếu đúng điều kiện case, cần khai báo phát biểu break nhằm thoát ra khỏi phát biểu switch. Trong trường hợp không khai báo break trong mỗi phát biểu case, nếu thỏa mãn điều kiện trong case nhưng PHP vẫn tiếp tục thực hiện tiếp các phát biểu case sau đó. - Phát biểu While: phát biểu vòng lặp đơn giản nhất trong PHP là vòng lặp while cho phép bạn thực thi khối lệnh trong while cho đến khi điều kiện của while là true như cú pháp While (điều kiện) { câu lệnh thực hiện; } - Phát biểu do ... while: tương tự như while nhưng kiểm tra điều kiện sau khi thực hiện khối lệnh. do { câu lệnh thực hiện; 13 } while (điều kiện) - Phát biểu vòng lặp for: tương tự như trong phát biểu while, có thể sử dụng vòng lặp for với 1 giới hạn chỉ định. for (giá trị khởi đầu; điều kiện giới hạn; giá trị lặp của vòng lặp for) { khối lệnh thực hiện; } h) Lưu trữ và truy vấn dữ liệu bằng PHP - Mở file bằng PHP: + fopen(tên file, chế độ mở): mở file + puts(), fwrite(): ghi file + close(): Đóng file + feof(): Nhận giá trị true nếu con trỏ ở cuối file + file_exists(): Kiểm tra file có tồn tại + filesize(): kiểm tra dung lượng của file - Thiết lập kết nối cơ sở dữ liệu Để kết nối cơ sở dữ liệu MySQL, cần cung cấp tên Server hay IP (có thể là localhost) của máy chứa cơ sở dữ liệu MySQL, Username và Password để đăng 14 nhập làm việc trên cơ sở dữ liệu được mở. - Thiết lập kết nối: Int mysql_pcconnect(“serverbname”, “username”, “password”); if(!$db) { echo “Không kết nối được với CSDL”); } hoặc $link = mysql_connect(“servername”, “username”, “password”) or die(“Không kết nối được với CSDL”); - Mở một CSDL: mysql_select_db(“database name”); hoặc mysql_select_db(“database name”, $link); - Đóng kết nối cơ sở dữ liệu: mysql_close(database_connection); - Truy vấn cơ sở dữ liệu: Int mysql_query(string sql); Int mysql_query(string sql, [int db_connect]); Int mysql_query(string database, string sql, [int db_connect]); Số lượng mẩu tin: mysql_num_rows(); Cho biết số lượng mẩu tin câu truy vấn trả về 15 - Truy vấn dữ liệu: Int mysql_fetch_array($result); Mysql_fetch_object($result); - Dung lượng của tập mẩu tin: int mysql_free_result(int $result); 1.1.1.3. Ưu và ngôn ngữ nhược điểm của PHP a. Ưu điểm - Dùng mã nguồn mở - Phổ biến hơn ASP (có thể thấy dựa vào số website dùng PHP) - Tốc độ nhanh, dễ sử dụng - Dựa vào XAMPP nên dễ cấu hình - Nhiều hệ thống CMS miễn phí dùng - Hỗ trợ kết nối nhiều hệ cơ sở dữ liệu: MySQL, MS SQL, Oracle… - Chạy trên nhiều hệ diều hành - Cộng đồng của PHP được coi là khá lớn và có chất lượng - Thư viện phong phú - Tính bảo mật khá an toàn - Khả năng mở rộng cho PHP là không có giới hạn - Luôn được cải tiến và cập nhật b. Nhược điểm 16 - Mã nguồn không đẹp - Chỉ chạy trên ứng dụng web 1.2. MYSQL 1.2.1. MySLQ là gì? MySQL được phát triển và hỗ trợ bởi công ty MySQL AB của Thụy Điển. Nó là hệ thống quản trị cơ sở dữ liệu (DBMS) cho các cơ sở dữ liệu quan hệ (vì vậy, MySQL là một RDBMS). Cơ sở dữ liệu là một tập hợp các dữ liệu có liên quan với nhau, có thể là văn bản, số hoặc các tập tin nhị phân được lưu trữ có tổ chức bởi DBMS. 1.2.2. Đặc điểm của MySQL MySQL là một phần mềm quản trị cơ sở dữ liệu dạng server-based (gần tương đương với SQL server của Microsoft). MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu, mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL có cơ chế phân quyền người sử dụng riêng, mỗi người dùng có thể được quản lý một hoặc nhiều cơ sở dữ liệu khác nhau, mỗi người dùng có một tên truy cập (user name) và mật khẩu tương ứng để truy xuất đến cơ sở dữ liệu. Khi ta truy vấn tới cơ sở dữ liệu MySQL, ta phải cung cấp tên truy cập và mật khẩu của tài khoản có quyền sử dụng cơ sở dữ liệu đó. Nếu không, chúng ta sẽ không làm được gì cả. 1.2.3. Các kiểu dữ liệu trong cơ sở dữ liệu MySQL a) Loại dữ liệu numeric 17 Loại Range Bytes Diễn giải Tinyint -127 ->128 hay 0..255 1 Số nguyên rất nhỏ Smallint -32768 -> 32767 hay 0..65535 2 Số nguyên nhỏ Mediumint -8388608 838860 hay3 Số nguyên vừa Int -231 -> 231 hay 0..232-1 4 Số nguyên Bigint -263 -> 263 hay 0..264-1 8 Số nguyên lớn Float Phụ thuộc số thập phân -> 0..16777215 Số thập phân dạng Single hay Double Float(M,D) ±1.175494351E-38 4 ±3.40282346638 Double(M,D) Số thập phân dạng Single ±1.7976931348623157308 ±2.2250738585072014E-308 Float(M[,D]) 8 Số thập phân dạng Double Số chấm động lưu dưới dạng char b) Loại dữ liệu Date and Time Loại Range Diễn giải Date 1000-01-01 Date trình bày dưới dạng YYYY-mmdd Time 00:00:00 Time trình bày dưới dạng hh:mm:ss 23:59:59 18 DateTime 1000-01-01 Date và Time trình bày dưới dạng 00:00:00 YYY-mm-dd hh:mm:ss 9999-12-31 23:59:59 TimeStamp[(M)] Year[(2|4)] 1970-01-01 TimeStamp trình bày dưới dạng 00:00:00 YYYY-mm-dd hh:mm:ss 1970-2069 Year trình bày dưới dạng 2 số hay 4 số 1901-2155 Trình bày đại diện của TimeStamp Loại Hiển thị TimeStamp YYYYMMDDHHMMSS TimeStamp(14) YYYYMMDDHHMMSS TimeStamp(12) YYMMDDHHMMSS TimeStamp(10) YYMMDDHHMM TimeStamp(8) YYYYMMDD TimeStamp(6) YYMMDD TimeStamp(4) YYMM (y = năm, m = tháng, d = ngày) c) Loại dữ liệu String Loại Range Diễn giải Char 1-255 ký tự Chiều dài của chuỗ Varchar 1-255 ký tự Chiều dài của chuỗ 19 Tinyblob 28-1 Khai báo cho Fie tự Tinytext 28-1 Khai báo cho Field Blob 216-1 Khai báo cho Fie Text 216-1 Khai báo cho Field tự. Text 216-1 Khai báo cho Field chứa kiểu chu ký tự. Mediumblob 224-1 Khai báo cho Field chứa kiểu b Vừa khoảng 16777215 ký tự. Mediumtext 224-1 Khai báo cho Field chứa kiểu chuỗ 16777215 ký tự. Longblob 232-1 Khai báo cho Field chứa kiểu b lớn khoảng 4294967295 ký tự. Longtext 232-1 Khai báo cho 4294967295 ký tự. 1.2.4. Phát biểu SQL Tạo cơ sở dữ liệu: Create Database Create Phát biểu SQL thao tác dữ liệu - SELECT (truy vấn mẩu tin) - INSERT (Thêm mẩu tin) - UPDATE (Cập nhật dữ liệu) - DELETE (Xóa mẩu tin) a) Phát biểu Select 20 Field chứa - Xem thêm -

Tài liệu liên quan


Thư viện tài liệu trực tuyến
Hỗ trợ
hotro_xemtailieu
Mạng xã hội
Copyright © 2023 Xemtailieu - Website đang trong thời gian thử nghiệm, chờ xin giấy phép của Bộ TT & TT
thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi tài liệu như luận văn đồ án, giáo trình, đề thi, .v.v...Kho tri thức trực tuyến.
Xemtailieu luôn tôn trọng quyền tác giả và thực hiện nghiêm túc gỡ bỏ các tài liệu vi phạm.