PHP là chữ viêt tát của “ Personal Home Page” do Rasmus Lerdorf tạo ra năm 1994. Vi tính hữu dụng và khả năng phát triên, PHP bắt đầu được sử dụng trong môi trường chuyên nghiệp và nó trở thành PHP : “Hypertext Preprocessor” Là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.PHP là mã nguồn mở do đó tất cả các đặc tính đều miễn phí, vì vậy mà có một cộng đồng rộng lớn luôn cải tiến và khắc phục lỗi.
MỤC LỤC MỤC LỤC .1 LỜI MỞ ĐẦU .3 CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI Tên đề tài: Quản lý nhân (Employee System Management ) .5 1.1.Giới thiệu đề tài: 1.2.Mục đích đề tài: .5 CHƯƠNG 2: GIỚI THIỆU CÔNG NGHỆ 2.1.Ngôn ngữ lập trình PHP 2.1.1.Định nghĩa .6 2.1.2.Lịch sử phát triển 2.2 SQL chuẩn ngôn ngữ ANSI để truy cập CSDL 10 2.3.Yii Framework 11 2.3.1.Khái quát 11 2.3.2.Lịch sử .12 2.3.3.Luồng xử lý logic .13 2.3.4.Mô hình MVC 17 2.4.Javascript, jquery 19 2.4.1.Khái quát Javascript: 19 2.4.2.Khái quát Jquery: 20 CHƯƠNG 3: MÔ HÌNH XỬ LÝ 21 3.1.Use Case theo Role 22 3.1.1.Phân loại user: 22 3.1.1.1.Role Admin: 22 Trang 3.1.1.2.Role Manager .23 3.1.1.3.Role Leader 24 3.1.1.4.Role Ordinary User .24 3.2.Sơ đồ chức hệ thống .26 3.2.1.Chức hệ thống 26 CHƯƠNG IV: MÔ HÌNH CƠ SỞ DỮ LIỆU 28 CHƯƠNG V: DEMO SẢN PHẨM 28 5.1.Trang đăng nhập .29 5.2.Trang chủ 30 5.3.Quản lý user 31 5.3.1.Tạo user 31 5.3.2.Cập nhật thông tin user 32 5.3.3.Xem chi tiết thông tin user .32 5.3.4.Thay đổi mật 33 5.3.5.Hủy kích hoạt user (Deactive user ) .33 5.3.6.Kích hoạt user (Active user) 34 5.3.7.Quên mật khẩu: 34 5.3.8.Email quên mật 34 5.3.9.Danh sách user tìm kiếm user 35 5.4.Quản lý profile 36 5.4.1.Update profile 36 5.4.2.Xem chi tiết thông tin profile 37 5.4.3.Danh sách profile 38 5.5.Quản lý phòng ban 39 5.5.1.Danh sách phòng ban: 39 Trang 5.6.Quản lý ngày nghỉ: 40 5.6.1.Tạo kỳ nghỉ 40 5.6.2.Cập nhật thông tin kỳ nghỉ hủy kỳ nghỉ 41 5.7.Quản lý tin nhắn .45 5.7.1.Tạo tin nhắn .45 5.7.2.Xem chi tiết tin nhắn, thông báo 46 5.8.Quản lý log .47 5.9.Quản lý hợp đồng 48 5.9.1.Tạo hợp đồng 48 5.9.2.Quản lý hợp đồng 49 5.9.3.Ngưng hợp đồng .50 CHƯƠNG VI: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 51 Kết luận vấn đề làm được: 51 Nêu vấn đề cải tiến bổ sung tương lai 51 LỜI MỞ ĐẦU “Tin học hóa” không khái niệm mẻ thời đại nay, nhiên khái niệm chưa ứng dụng toàn lĩnh vực, quan, tổ chức Dù sản phẩm công nghệ đưa thị trường nhiều, nhiều lý quan, tổ chức chưa áp dụng rộng rãi kinh phí đầu tư, nhân lực phát triển, thói quen người sử dụng …… Trang Trong lĩnh vực quản lý, phần mềm ứng dụng không giúp người quản lý sản phẩm, tin tức, doanh thu… mà quản lý người.Việc quản lý người giúp người quản lý giảm tải việc phải lưu nhớ lời nói miệng, giấy tờ tràn ngập bàn làm việc Trang CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI Tên đề tài: Quản lý nhân (Employee System Management ) 1.1 Giới thiệu đề tài: Xuất phát từ nhu cầu quản lý nhân viên với văn phòng, giảm tải công việc hàng ngày cho người quản lý, ứng dụng thực việc quản lý người dùng, thông tin hồ sơ(profile), đăng ký ngày nghỉ (vacation), gửi thông báo, quản lý hợp đồng 1.2 Mục đích đề tài: - Quản lý thông tin người dùng, thông tin hồ sơ - Quản lý ngày nghỉ - Gửi thông báo hệ thống - Quản lý hợp đồng - Quản lý hành động tác động vào hệ thống - Tìm kiếm thông tin user, xuất excel danh sách user - Tìm kiếm thông tin hợp đồng, xuất excel danh sách hợp đồng - Tìm kiếm thông tin hồ sơ nhân viên, xuất file excel danh sách, xuất file pdf chi tiết hồ sơ nhân viên - Thay đổi mật khẩu, quên mật - Tính toán lương từ Net sang Gross ngược lại - Tìm hiểu framework Yii, sở liệu Mysql Trang CHƯƠNG 2: GIỚI THIỆU CÔNG NGHỆ 2.1 Ngôn ngữ lập trình PHP 2.1.1 Định nghĩa - PHP chữ viêt tát “ Personal Home Page” Rasmus Lerdorf tạo năm 1994 Vi tính hữu dụng khả phát triên, PHP bắt đầu sử dụng môi trường chuyên nghiệp trở thành PHP : “Hypertext Preprocessor” Là ngôn ngữ lập trình kịch hay loại mã lệnh chủ yếu dùng để phát triển ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát Nó thích hợp với web dễ dàng nhúng vào trang HTML Do tối ưu hóa cho ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C Java, dễ học thời gian xây dựng sản phẩm tương đối ngắn so với ngôn ngữ khác nên PHP nhanh chóng trở thành ngôn ngữ lập trình web phổ biến giới - PHP mã nguồn mở tất đặc tính miễn phí, mà có cộng đồng rộng lớn cải tiến khắc phục lỗi 2.1.2 Lịch sử phát triển PHP/FI PHP phát triển từ sản phẩm có tên PHP/FI PHP/FI Rasmus Lerdorf tạo năm 1995, ban đầu xem tập đơn giản mã kịch Perl để theo dõi tình hình truy cập đến sơ yếu lý lịch ông mạng Ông đặt tên cho mã kịch 'Personal Home Page Tools' Khi cần đến chức rộng hơn, Rasmus viết thực thi C lớn để truy vấn tới sở liệu giúp cho người sử dụng phát triển ứng dụng web đơn giản Rasmus định công bố mã nguồn PHP/FI cho người xem, sử dụng sửa lỗi có đồng thời cải tiến mã nguồn PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm số chức cho PHP ta biết đến chúng ngày Nó có biến kiểu Perl, thông dịch tự động biến form cú pháp HTML Trang nhúng Cú pháp giống Perl, hạn chế nhiều, đơn giản có phần thiếu quán Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai phiên C, thu hút hàng ngàn người sử dụng toàn giới với xấp xỉ 50.000 tên miền ghi nhận có cài đặt nó, chiếm khoảng 1% số tên miền có mạng Internet Tuy có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh mã nguồn dự án vào thời chủ yếu dự án người PHP/FI 2.0 thức công bố vào tháng 11 năm 1997, sau thời gian dài công bố dạng beta Nhưng không lâu sau đó, thay alpha PHP 3.0 PHP PHP 3.0 phiên cho thấy hình ảnh gần gũi với phiên PHP mà biết ngày Nó Andi Gutmans Zeev Suraski tạo năm 1997 sau viết lại hoàn toàn mã nguồn trước Lý mà họ tạo phiên nhận họ thấy PHP/FI 2.0 yếu việc phát triển ứng dụng thương mại điện tử mà họ xúc tiến dự án trường đại học Trong nỗ lực hợp tác bắt đầu xây dựng dựa sở người dùng có PHP/FI, Andi, Rasmus Zeev định hợp tác công bố PHP 3.0 phiên hệ PHP/FI 2.0, chấm dứt phát triển PHP/FI 2.0 Một sức mạnh lớn PHP 3.0 tính mở rộng mạnh mẽ Ngoài khả cung cấp cho người dùng cuối sở hạ tầng chặt chẽ dùng cho nhiều sở liệu, giao thức API khác nhau, tính mở rộng PHP 3.0 thu hút nhiều nhà phát triển tham gia đề xuất mô đun mở rộng Hoàn toàn kết luận điểm mấu chốt dẫn đến thành công vang dội PHP 3.0 Các tính khác giới thiệu PHP 3.0 gồm có hỗ trợ cú pháp hướng đối tượng nhiều cú pháp ngôn ngữ quán khác Ngôn ngữ hoàn toàn công bố tên mới, xóa bỏ mối liên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà tên PHP/FI Trang 2.0 gợi nhắc Nó đặt tên ngắn gọn 'PHP', kiểu viết tắt hồi quy "PHP: Hypertext Preprocessor" Vào cuối năm 1998, PHP phát triển số cài đặt lên tới hàng chục ngàn người sử dụng hàng chục ngàn Web site báo cáo cài Vào thời kì đỉnh cao, PHP 3.0 cài đặt cho xấp xỉ 10% số máy chủ Web có mạng Internet PHP 3.0 thức công bố vào tháng năm 1998, sau thời gian tháng cộng đồng kiểm nghiệm PHP Vào mùa đông năm 1998, sau PHP 3.0 thức công bố, Andi Gutmans Zeev Suraski bắt đầu bắt tay vào việc viết lại phần lõi PHP Mục đích thiết kế nhằm cải tiến tốc độ xử lý ứng dụng phức tạp, cải tiến tính mô đun sở mã PHP Những ứng dụng chạy PHP 3.0 dựa tính hỗ trợ nhiều sở liệu API bên thứ ba, PHP 3.0 không thiết kế để xử lý ứng dụng phức tạp cách có hiệu Một động mới, có tên 'Zend Engine' (ghép từ chữ đầu tên Zeev Andi), đáp ứng nhu cầu thiết kế cách thành công, lần giới thiệu vào năm 1999 PHP 4.0, dựa động này, kèm với hàng loạt tính bổ sung, thức công bố vào tháng năm 2000, gần năm sau PHP 3.0 đời Ngoài tốc độ xử lý cải thiện nhiều, PHP 4.0 đem đến tính chủ yếu khác gồm có hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việc HTTP, tạo đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo mật cung cấp vài cấu trúc ngôn ngữ Với PHP 4, số nhà phát triển dùng PHP lên đến hàng trăm nghìn hàng triệu site công bố cài đặt PHP, chiếm khoảng 20% số tên miền mạng Internet Nhóm phát triển PHP lên tới số hàng nghìn người nhiều nghìn người khác tham gia vào dự án có liên quan đến PHP PEAR, Trang PECL tài liệu kĩ thuật cho PHP PHP Sự thành công to lớn PHP 4.0 không làm cho nhóm phát triển PHP tự mãn.Cộng đồng php nhanh chóng giúp họ nhận yếu PHP đặc biệt với khả hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML, không hỗ trợ giao thức máy khách MySQL 4.1 5.0, hỗ trợ dịch vụ web yếu Những điểm mục đích để Zeev Andi viết Zend Engine 2.0, lõi PHP 5.0 Một thảo luận Slashdot cho thấy việc phát triển PHP 5.0 bắt đầu vào thời điểm tháng 12 năm 2002 vấn Zeev liên quan đến phiên có mặt mạng Internet vào khoảng tháng năm 2002 Ngày 29 tháng năm 2003, PHP Beta thức công bố để cộng đồng kiểm nghiệm Đó phiên Zend Engine 2.0 Phiên Beta sau mắt vào tháng 10 năm 2003 với xuất hai tính chờ đợi: Iterators, Reflection namespaces tính gây tranh cãi khác bị loại khỏi mã nguồn Ngày 21 tháng 12 năm 2003: PHP Beta công bố để kiểm tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả gọi hàm PHP bên XSLT, sửa chữa nhiều lỗi thêm nhiều hàm PHP thức mắt ngày 13 tháng năm 2004 sau chuỗi dài kiểm tra thử bao gồm Beta 4, RC 1, RC2, RC3 Mặc dù coi phiên sản xuất PHP 5.0 số lỗi đáng kể lỗi xác thực HTTP Ngày 14 tháng năm 2005, PHP 5.1 Beta PHP Team công bố đánh dấu chín muồi PHP với có mặt PDO, nỗ lực việc tạo hệ thống API quán việc truy cập sở liệu thực câu truy vấn Ngoài ra, PHP 5.1, nhà phát triển PHP tiếp tục có cải tiến nhân Zend Engine 2, nâng cấp mô đun PCRE lên PCRE 5.0 tính cải tiến SOAP, streams SP PHP Phiên PHP kỳ vọng lấp đầy khiếm khuyết PHP phiên tại, ví dụ: hỗ trợ namespace (hiện nhà phát triển chưa công bố rõ ràng vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API Trang chuẩn cho việc truy cập sở liệu, API cũ bị đưa thành thư viện PECL MySQL 2.2 SQL chuẩn ngôn ngữ ANSI để truy cập CSDL SQL viết tắt Structured Query Language – hệ quản trị sở liệu mở, hoàn toàn miễn phí MySQL sử dụng phổ biến lập trình website động với PHP, hay gọi chung lập trình PHP & MySQL MySQL cung cấp cho cách truy vấn, thao tác với liệu tương tự SQL mức độ đơn giản Cấu trúc liệu MySQL : - MySQL lưu trữ liệu theo dạng bảng - Mỗi sở liệu bao gồm nhiều bảng - Mỗi bảng chứa nhiều cột để lưu trữ giữ liệu, cột có thuộc tính như: kiểu liệu gì, khóa chính, chiều dài liệu, … - Dòng tập hợp giá trị tất cột bảng, bảng thường bao gồm nhiều record Một số kiểu liệu phổ biến thường sử dụng MySQL Kiểu liệu Mô tả INT Định dạng kiểu số nguyên có chiều dài từ – 4294967214 Float Định dạng số thực có chiều dài bytes Trang 10 5.4.2 Xem chi tiết thông tin profile Trang 37 5.4.3 Danh sách profile Danh sách profile nhân viên làm việc, nhân viên nghỉ, kết hợp chức tìm kiếm thông tin profile để xem nhanh thông tin profile muốn xem chi tiết Trang 38 5.5 Quản lý phòng ban 5.5.1 Danh sách phòng ban: Trang 39 5.6 Quản lý ngày nghỉ: 5.6.1 Tạo kỳ nghỉ Cho phép tạo tạo ngày nghỉ cho nhân viên Trang 40 5.6.2 Cập nhật thông tin kỳ nghỉ hủy kỳ nghỉ Nhân viên hủy ngày nghỉ đăng kí, sau gửi, cách click vào button withdraw: Sau đăng kí ngày nghỉ, manager admin xác nhận thông tin ngày nghỉ Trang 41 Trạng thái ngày nghỉ xác nhận thành công Hoặc nhấn button request cancel manager admin cho nghỉ rồi, cảm thấy không cần thiết Trang 42 Trạng thái xác nhận hủy kỳ nghỉ thành công Admin manager hủy đơn xin nghỉ từ lúc đầu, cách click vào button decline: Trang 43 Trạng thái xác nhận không đồng ý xin nghỉ phép cho nhân viên Trang 44 5.7 Quản lý tin nhắn 5.7.1 Tạo tin nhắn Trang 45 5.7.2 Xem chi tiết tin nhắn, thông báo Trang 46 5.8 Quản lý log Trang hiển thị thông tin tác động vào hệ thống Trang 47 5.9 Quản lý hợp đồng 5.9.1 Tạo hợp đồng Trang 48 5.9.2 Quản lý hợp đồng Trang 49 5.9.3 Ngưng hợp đồng Trang 50 CHƯƠNG VI: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận vấn đề làm được: Xây dựng hệ thống quản lý nhân viên cho công ty Quản lý user hệ thống Quản lý hệ thống profile nhân viên Tạo profile cho nhân viên Quản lý ngày nghỉ Quản lý hợp đồng cho nhân viên Tạo hệ thống gửi nhận tin nhắn Tính toán lương cho nhân viên Nêu vấn đề cải tiến bổ sung tương lai Phát triển thêm hệ thống kế toán( tiền lương chi tiêu công ty) Đồng database hai phận nhân kế toán Phát triển thêm chức quản lý quản lý chi phí công ty Quản lý nhân viên theo phòng ban Quản lý ngày nghỉ theo năm Trang 51 ... tái sử dụng - Khả tái sử dụng mở rộng Yii cao Yii Framework hoàn toàn hướng đối tượng Mọi thứ Yii tái sử dụng mở rộng dễ dàng - Yii hỗ trợ tất DBMS PDO (PHP Data Object) - Hiệu suất xử lý Framework. .. dụng …… Trang Trong lĩnh vực quản lý, phần mềm ứng dụng không giúp người quản lý sản phẩm, tin tức, doanh thu… mà quản lý người.Việc quản lý người giúp người quản lý giảm tải việc phải lưu nhớ... 2.3 Yii Framework 2.3.1 Khái quát - Yii PHP framework hỗ trợ tốt cho việc phát triển Web 2.0 - Yii giúp nhà phát triển xây dựng ứng dụng phức tạp với thời gian nhanh - Yii phát âm Yee [ji:], Yii