Hệ thống quản lý nguồn nhân lực khoa học kỹ thuật

MỞ ĐẦU 3 CHƯƠNG 1: MÔ TẢ VÀ KHẢO SÁT BÀI TOÁN 6 1.1. Thực trạng về công tác quản lý nhân sự 6 1.2. Mục tiêu và giải pháp 7 1.3. Khảo sát bài toán quản lý nguồn nhân lực khoa học kỹ thuật của các trường đại học, cao đẳng 8 1.3.1. Mô hình tổ chức 8 1.3.2. Khảo sát thực trạng ứng dụng tin học của các trường đại học , cao đẳng trong công tác quản lý nhân sự 9 1.3.3 Mô hình hệ thống thực hiện 10 1.4. Phạm vi bài toán 12 1.4.1. Phân hệ nghiệp vụ quản lý thông tin cán bộ 12 1.4.2. Phân hệ lập thống kê và báo cáo 12 1.4.3. Phân hệ cấp phát và quản lý quyền truy cập 12 1.4.4. Phân hệ lập biên bản và quản lý truy cập 13 1.4.5. Phân hệ khai báo bổ sung các nghiệp vụ quản lý 13 CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 14 2.1. Phân tích 14 2.1.1. Mô tả nghiệp vụ 14 2.2 Thiết kế hệ thống 20 2.2.2. Biểu đồ phân rã chức năng hệ thống. 20 2.2.3. Sơ đồ luồng dữ liệu 30 2.2.4. Đặc tả tiến trình 58 2.2.5. Xác định các thực thể và mô hình quan hệ 115 Chương 3: Xây dựng và cài đặt chương trình 146 3.1. Giới thiệu công nghệ áp dụng 146 3.1.1. Ngôn ngữ PHP 146 3.1.2. Hệ quản trị cơ sở dữ liệu MySQL 152 3.2. Một số giao diện chính của chương trình 157 Chương 4: Module bảo mật bằng hệ thống thẻ nhớ (smart card) và đầu đọc thẻ ACR30 169 4.1.Giới thiệu chung 169 4.1.1. Mở đầu 169 4.1.2. Giới thiệu chung về ACS (Advanced card system) và sản phẩm thẻ nhớ, đầu đọc thẻ nhớ 169 4.1.3. Bộ phát triển cho các ứng dụng thẻ nhớ (Development Kit for smart card applications) 170 4.1.4. Đặc điểm kỹ thuật và yêu cầu hệ thống 171 4.1.5. Cài đặt và gỡ bỏ driver cho đầu đọc thẻ ( Smart card reader) 172 4.2. Xây dựng chương trình đọc thông tin thẻ nhớ tích hợp với hệ thống website chương trình chính 176 4.2.3.Phạm vi bài toán 176 4.2.4. Phân tích 176 4.2.5. Thiết kế 177 4.2.6. Công cụ phát triển module Client 178 4.2.7. Giới thiệu qua về ngôn ngữ C/C++ và Visual C++ 178 4.2.8. Giao diện chính của chương trình chạy trên client 178 4.2.9. Các hạn chế và phương hướng phát triển chương trình 179 KẾT LUẬN 180 TÀI LIỆU THAM KHẢO 181 MỞ ĐẦU Trong công cuộc đổi mới đất nước hiện nay thì việc đào tạo, sử dụng, đãi ngộ con người, đặc biệt đối với những người làm công tác nghiên cứu khoa học kỹ thuật là một trong những công tác quan trọng quết định sự thành bại của sự nghiệp cách mạng nói chung cũng như trong công tác của một tập thể nói riêng. Do vậy, công tác quản lý con người lâu nay luôn là công tác số một không thể tránh của tất cả các tổ chức. Mặt khác, trong thời đại kinh tế tri thức ngày nay phát triển công nghệ thông tin đã trở thành một ngành kinh tế quan trọng, đặc biệt là công nghệ phần mềm. Sự ra đời của các sản phẩm phần mềm đặc biệt là các phần mềm quản lý nhân sự trong vài năm gần đây mang lại nhiều thuận lợi trong công tác quản lý nhân sự. Tuy nhiên bên cạnh những tiện lợi mà các chương trình này mang lại, vẫn còn có nhiều khó khăn, nhược điểm cần được khắc phục. Nhược điểm của các chương trình có nhiều lý do như: nền công nghiệp phần mềm còn rất non trẻ, bản thân các nhà lập trình còn hạn chế về trình độ cũng như kinh nghiệm làm phần mềm, công tác quản lý hồ sơ cán bộ hiện nay chưa được quan tâm đúng mức so với các công tác chuyên môn khác, trình độ của đội ngũ cán bộ quản lý sử dụng thành thạo tin học còn rất ít, bản thân công tác quản lý còn rườm rà, thiếu khoa học, chịu ảnh hưởng nhiều của cơ chế tập trung quan liêu bao cấp, cơ chế quản lý của nền sản xuất nhỏ lạc hậu. Công tác quản lý nhân sự đối với các trường đại học, cao đẳng, các viện nghiên cứu, với đối tượng nhân sự là các cán bộ nghiên cứu khoa học kỹ thuật cũng không thoát khỏi bức tranh toàn cảnh của tình trạng chung như đã nêu trên. Đối tượng quản lý của các trường đại học là hàng ngàn cán bộ đối với những trường đại học lớn với những đặc điểm rất khác biệt thì việc quản lý đội ngũ cán bộ công chức sao cho khoa học, lại càng cấp thiết do những yêu cầu ngày càng cao của sự nghiệp giáo dục. Thông tin về nhân sự biến đổi hàng ngày, ngoài những thông tin thay đổi có tính chất định kỳ như nâng lương, nâng ngạch, còn có những thông tin biến đổi riêng lẻ như việc đề bạt, phong hàm, khen thưởng, kỷ luật, đào tạo bồi dưỡng trong nước và ngoài nước .v.v. Tính ra trung bình khối lượng thông tin cần phải nhập mỗi năm khác biệt từ 40% đến 50% so với thông tin lưu trong hồ sơ cán bộ hiện hành. Công tác quản lý cùng do nhiều người làm, mỗi người phụ trách một mảng, ở nhiều nguồn khác nhau. Các thông tin tổng hợp lấy được từ các nguồn khác nhau thường là có độ vênh, một phần vì thiếu hệ cơ sở dữ liệu thống nhất. Điều này làm cho các số liệu báo cáo bị giảm độ chính xác, ảnh hưởng trực tiếp đến việc tính toán kế hoạch cho các chính sách mô của toàn ngành. Những lý do trên cho thấy việc xây dựng một hệ thống thông tin quản lý công chức trên máy tính, đáp ứng nhanh và hiệu quả các yêu cầu tập hợp, tra cứu tìm kiếm, thống kê thông tin và tư vấn các vấn đề liên quan đến nhân sự trong ngành là rất cần thiết. Cũng vì vậy chúng em đã mạnh dạn chọn khóa luận là Hệ thống quản lý nguồn nhân lực khoa học kỹ thuật Để thực hiện được mục tiêu trên, giải pháp mà Hệ thống quản lý nguồn nhân lực khoa học đưa ra dựa trên ý tưởng: mỗi nhân viên phải có trách nhiệm, nghĩa vụ tự thực hiện việc cập nhật những thay đổi, biến động trong quá trình sinh hoạt xã hội và hoạt động công tác của mình. Và những thông tin đó phải được xác nhận bởi một người có trách nhiệm liên đới. Khi có một nhân viên có những thay đổi nào đó trong quá trình công tác hoặc trong sinh hoạt xã hội, nhân viên đó phải có trách nhiệm cập nhật những thay đổi đó vào hồ sơ của mình. Lúc đó, hệ thống sẽ phát sinh một luồng công việc chuyển tới (những) người có trách nhiệm liên đới để xác nhận những thông tin đã được cập nhật. (Những) người có trách nhiệm xác nhận thông tin sau khi đã thực hiện những hoạt động xác minh tính chính xác về những thông tin đã được cập nhật (ví dụ: điều tra thực tế, thu thập công văn, giấy tờ chứng nhận, ), sẽ xác nhận vào những thông tin mà nhân viên đã cập nhật. Sự xác nhận ở đây là việc người xác nhận đính kèm những thông tin xác nhận (có thể gồm các tài liệu bổ sung như là công văn, giấy tờ, hình ảnh, ) và chữ ký điện tử của người đó vào những thông tin đã được cập nhật của nhân viên. Trong hệ thống quản lý nhân sự này đưa vào sử dụng loại thẻ nhớ ACOS1 một loại smart card khá thông dụng và đầu đọc thẻ ACR30U do ACS phát triển nhằm tăng thêm một lớp bảo mật. Mỗi người dùng có một thẻ dùng để đăng nhập hệ thống. Module này được phát triển độc lập làm tăng tính bảo mật cho hệ thống. Nội dung khóa luận được trình bày theo các chương: ã Chương 1: Mô tả và khảo sát bài toán ã Chương 2: Phân tích và thiết kế hệ thống ã Chương 3: Xây dựng và cài đặt chương trình ã Chương 4: Bảo mật theo hệ thống thẻ nhớ ACR30U Theo hướng tiếp cận đề tài là sử dụng phương pháp phân tích và thiết kế theo công nghệ hướng cấu trúc. Ngôn ngữ lập trình được sử dụng là PHP và MySQL. Là một ứng dụng dựa trên nền Web nên hệ thống đảm bảo được tính hiện đại. Chương trình này được phát triển nhằm đáp ứng các yêu cầu cập nhật, tra cứu tìm kiếm, báo cáo thống kê phục vụ các hoạt động nghiệp vụ hàng ngày trong công tác quản lý cán bộ tại các trường đại học, cao đẳng hay các viện nghiên cứu. Khóa luận tốt nghiệp này, đã cố gắng bám sát vào thực trạng quản lý hồ sơ công chức tại các trường đại học, cao đẳng tại Hà Nội, theo dõi và cập nhật kịp thời các điều chỉnh trong công tác tổ chức nhà nước và ngành để đáp ứng yêu cầu quản lý nghiệp vụ.

doc182 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2340 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Hệ thống quản lý nguồn nhân lực khoa học kỹ thuật, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
c tịch của CBCNV Dân tộc: CBCNV thuộc dân tộc gì Tôn giáo: CBCNV thuộc tôn giáo gì Thành phần bản thân: Thành phần xuất than của CBCNV Thành phần gia đình: Thành phần gia đình của CBCNV Trình độ ngoại ngữ: Trình độ ngoại ngữ Trình độ tin học: Trình độ tin học Trình độ văn hoá: Trình độ văn hoá Tình trạng sức khoẻ: Tình trạng sức khoẻ Số điện thoại: Số điện thoại lien lạc Địa chỉ email: Địa chỉ email Ngày vào công ty:Ngày bắt đầu vào làm trong công ty. Hình thức tuyển vào công ty: Hình thức tuyển vào trong công ty Trình độ chuyên môn: Trình độ chuyên môn đoà tạo Chuyên ngành đào tạo: Chuyên ngành đào tạo Chức vụ: CBCNV giữ chức vụ gì File ảnh: Ảnh của cán bộ công nhân viên Số CMND: Số chứng minh nhân dân Ngày cấp CMND: Nơi cấp CMND: Ngày vào đoàn: Nơi kết nạp đoàn: Ngày vào đảng: Nơi kết nạp đảng: Ngày chính thức vào đảng: Số hồ sơ đảng: Ngày tham gia cách mạng: Ngày nhập ngũ: Ngày xuất ngũ: Thâm niên công tác: Người quản lý Mã số người quản lý Người quản trị Tên người quản trị Mã số người quản trị Sức khỏe chiều cao cân nặng nhóm máu loại bệnh tình trạng sức khỏe ngày tháng khám sức khỏe Bằng cấp Tên bằng Năm tốt nghiệp: Mã ngành:Chuyên ngành tốt nghiệp Tên nước: Tốt nghiệp tại nước nào Tên trường: Tên trường tốt nghiệp Bằng cấp: Loại bằng cấp nhận được Hình thức đào tạo: Hình thức đào tạo của trường tốt nghiệp Loại bằng: Bằng tốt nghiệp đạt loại gì Khóa đào tạo Tên khoá: Tên của khoá học mà cơ quan tổ chức, Ngày bắt đầu: Ngày bắt đầu khoá học Ngày kết thúc: Ngày kết thúc khoá học Chứng chỉ: Chứng chỉ được nhận sau khoá học Số tiền: Số tiền phải trả cho khoá học đó. Ghi chú: Đề tài nghiên cứu Mã số đề tài Tên đề tài nguyên cứu Thời gian thực hiện đề tài Kết quả, giải thưởng đạt được đạt được Ghi chú Tác phẩm Mã số tác phẩm Tên tác phẩm Ảnh tác phẩm Tên đồng tác giả Thể loại Năm xuất bản Nhà xuất bản Các giải thưởng đạt được Ghi chú Khen thưởng kỷ luật Số QĐ: Số quyết định khen thưởng/Kỷ luật Ngày tháng: Ngày tháng được khen thưởng/ Kỷ luật Khen thưởng/KL: Chọn loại Khen thưởng/ Kỷ luật Lý do: Lý do được khen thưởng/ Kỷ luật Ghi chú: Quá trình công tác Từ ngày - Đến ngày: Thời gian công tác Tên công ty: Tên công ty đã làm Chức vụ: Giữ chức vụ gì trong thời gian công tác Ghi chú: Lương Hệ số lương: Mức lương: Thời gian bắt đầu hưởng lương Thời gian kết thúc hưởn lương Phụ cấp: Phòng ban Mã số phòng ban: Tên phòng ban: Mã số phòng ban cấp trên: Mã số của phòng ban mà phòng ban này trực thuộc Mẫu báo cáo Tên mẫu báo cáo ID Nội dung Template ID Hồ sơ báo cáo ID Tên báo cáo Nội dung báo cáo Tài khoản Tên tài khoản Mật mã Mã số người sử dụng tài khoản Tên người sử dụng tài khoản Mã thẻ từ Thông tin thẻ từ Nhóm người dùng Mã số nhóm Tên nhóm: 2.2.5.2. Mô hình khái niệm dữ liệu - ER Từ các thực thể ở trên ta có mô hình khái niệm dữ liệu ER. Mô hình ER của hệ thống 2.2.5.3 Xây dựng mô hình dữ liệu quan niệm Chuyển các thực thể từ mô hình ER thành các quan hệ và chuẩn hóa các quan hệ theo chuẩn BCNF . 1 Các quan hệ sau khi chuẩn hóa. NHÂN VIÊN (Mã NHÂN VIÊN, tên nhân viên, mã người quản lý, ngày sinh, giới tính, bí danh, quê quán, hộ khẩu, mã địa chỉ, mã quốc tịch, mã dân tộc, mã tôn giáo, mã trinh do văn hoá, mã thành phần bản thân, mã thành phần gia đình, số điện thoại, email, sốCMND, ngày cấpCMND, nơi cấp CMND, ngày vào đoàn, nơi kết nạp đoàn, ngày vào đảng, nơi kết nạp đảng, ngày nhập ngũ, ngày xuất ngũ, mã phòng ban, mã chức vụ, thời gian cập nhật, mã loại hồ sơ) ĐỊA CHỈ (Mã địa chỉ, mã tỉnh thành, mã quận huyện, địa chỉ) QUAN HỆ GIA ĐÌNH (Mã quan hệ gia đình, mã nhân viên, họ tên, ngày sinh, giới tính, mã quan hệ, nghề nghiệp, nơi công tác, ghi chú, thời gian cập nhật, mã loại hồ sơ) QUÁ TRÌNH CÔNG TÁC (Mã quá trình công tác, mã nhân viên, ngày bắt đầu, ngày kết thúc, tên cơ quan, mã chức vụ, ghi chú, thời gian cập nhật, mã loại hồ sơ) KHÓA ĐÀOTẠO (Mã khóa đào tạo, mã nhân viên, tênkhóa, ngày bắt đầu, ngày kết thúc, chứng chỉ, số tiền phải trả, ghichú, thời gian cập nhật, mã loại hồ sơ) BẰNGCẤP (Mã bằng cấp, mã nhân viên, mã nước, tên trường, mã loại bằng, bằng đạt loại, chuyên ngành, mã hình thức đào tạo, kết quả, ghi chú, thời gian cập nhật, mã loại hồ sơ) CÔNG TRÌNH NGHIÊN CỨU (Mã công trình nghiên cứu, mã nhân viên, tên đề tài, cấp đề tài, thời gian thực hiện, kết quả, ghi chú, thời gian cập nhật, mã loại hồ sơ) TÁCPHẨM (Mã tác phẩm, mã nhân viên, tên tác phẩm, nội dung, thể loại, năm xuất bản, nhà xuất bản, giải thưởng đạt được, ghi chú, thời gian cập nhật, mã loại hồ sơ) KHEN THƯỞNG (Mã khen thưởng, mã nhân viên, số quyết định, ngày tháng, nội dung, ghi chú, thông tin xác nhận, thông tin đính kèm, thời gian xác nhận, thời gian cập nhật, mã loại hồ sơ) KỶ LUẬT (Mã kỷ luật, mã nhân viên, số quyết định, ngày tháng, nội dung, ghi chú, thời gian cập nhật, mã loại hồ sơ) BẢO HIỂM (Mã bảo hiểm, mã nhân viên, mức lương đóng bảo hiểm, thời gian bắt đầu, thời gian kết thúc, ghi chú, thời gian cập nhật, mã loại hồ sơ) LƯƠNG (Mã lương, mã nhân viên, mức lương, hệ số lương, ngày bắt đầu, ngày kết thúc, ghi chú, thời gian cập nhật, mã loại hồ sơ) HỒ SƠ SỨC KHỎE (Mã sức khỏe, mã nhân viên, chiều cao, cân nặng, nhóm máu, loại bệnh, mã tình trạng sức khỏe, ngày tháng khám sức khỏe, ghi chú, thời gian cập nhật, mã loại hồ sơ) HỒ SƠ NGOẠI NGỮ (Mã hồ sơ ngoại ngữ, mã nhân viên, mã ngoại ngữ, mã trình độ ngoại ngữ, mã loại hồ sơ) HỒ SƠ TIN HỌC (Mã hồ sơ tin học, mã nhân viên, mã tin học, mã trình độ, mã loại hồ sơ) XÁC NHẬN (Mã xác nhân, mã hồ sơ, mã loại hồ sơ, thông tin xác nhận, thời gian xác nhận) ĐÍNH KÈM (Mã đính kèm, mã xác nhận, thông tin đính kèm) PHÒNG BAN (MãPB, mã phòng ban cấp trên, tên phòng ban, công việc) HỒ SƠ BÁO CÁO (MãBC, tên báo cáo, nội dung báo cáo) MẪU BÁO CÁO (MãBC, tên mẫu báo cáo, templateID) QUỐC TỊCH (Mã quốc tịch, tên quốc tịch) TỈNH THÀNH (Mã tỉnh thành, tên tỉnh thành) QUẬN HUYỆN (Mã quận huyện, tên quận huyện, mã tỉnh thành) DÂN TỘC (Mã dân tộc, tên dân tộc) TÔN GIÁO (Mã tôn giáo, tên tôn giáo) TRÌNH ĐỘ VĂN HÓA (Mã trình độ văn hóa, tên trình độ văn hóa) TÌNH TRẠNG SỨC KHỎE (Mã tình trạng sức khỏe, tên tình trạng sức khỏe) NHÓM MÁU (Mã nhóm máu, tên nhóm máu) THÀNH PHẦN BẢN THÂN (Mã thành phần bản thân, tên thành phần bản thân) THÀNH PHẦN GIA ĐÌNH (Mã thành phần gia đình, tên thành phần gia đình) LOẠI QUAN HỆ (Mã mối quan hệ, tên mối quan hệ) MỨC ĐỘ (Mã mức độ, tên mức độ) TRÌNH ĐỘ BẰNG CẤP (Mã loại bằng, tên loại bằng) TRÌNH ĐỘ NGOẠI NGỮ (Mã trình độ ngoại ngữ, tên trình độ ngoại ngữ) TRÌNH ĐỘ TIN HỌC (Mã trình độ tin học, tên trình độ tin học) HÌNH THỨC ĐÀO TẠO (Mã hình thức đào tạo, tên hình thức đào tạo) NGOẠI NGỮ (Mã ngoại ngữ, tên ngoại ngữ) TIN HỌC (Mã tin học, tên tin học) CHỨC VỤ (Mã chức vụ, tên chức vụ) MODUL (Mã modul, tên modul) NGƯỜI QUẢN TRỊ (Mã nguời quản trị, mã nhóm, tên người quản trị, tên tài khoản, mật mã, mã thẻ từ, thông tin thẻ từ) TÀI KHOẢN (Mã nhân viên, tên tài khoản, mật mã, mã nhóm, mã thẻ từ, thông tin thẻ từ) NHÓM NGƯỜI DÙNG (Mã nhóm, tên nhóm) QUYỀN HẠN (Mã quyền hạn, mã nhóm, mã modul, tên quyền hạn, mô tả quyền hạn) 2. Mô hình dữ liệu quan niệm. NHÂN VIÊN PHÒNG BAN BẰNG CẤP QUÁ TRÌNH BẢO HIỂM QUÁ TRÌNH ĐÀO TẠO HỒ SƠ KHEN THƯỞNG HỒ SƠ KỶ LUẬT LƯƠNG QUÁ TRÌNH CÔNG TÁC ĐỀ TÀI NGHIÊN CỨU HỒ SƠ TÁC PHẨM HỒ SƠ BÁO CÁO HỒ SƠ MẪU BÁO CÁO MỨC ĐỘ HÌNH THỨC ĐÀO TẠO QUAN HỆ GIA ĐÌNH LOẠI QUAN HỆ TRÌNH ĐỘ HỒ SƠ SỨC KHỎE TÌNH TRẠNG SỨC KHỎE NHÓM MÁU Mô hình dữ liệu quan niêm: phần a NHÂN VIÊN HỒ SƠ TIN HỌC HỒ SƠ NGOẠI NGỮ QUỐC TỊCH DÂN TỘC THÀNH PHẦN BẢN THÂN TIN HỌC NGỌAI NGỮ THÀNH PHẦN GIA ĐÌNH TÔN GIÁO ĐỊA CHỈ TRÌNH ĐỘ VĂN HÓA TRÌNH ĐỘ TIN HỌC TRÌNH ĐỘ NGOẠI NGỮ CHỨC VỤ TỈNH THÀNH QUẬN HUYỆN HỒ SƠ TÀI KHOẢN NHÓM NGƯỜI DÙNG QUYỀN HẠN NGƯỜI QUẢN TRỊ Modul Mô hình dữ liệu quan niêm: phần b 2.2.5.4.Từ điển các bảng dữ liệu Mô tả các thuộc tính, kiểu, độ rộng, ràng buộc, thuộc tính khóa, khuôn dạng của mỗi thuộc tính. 1 tbl_nhan_vien Thông tin nhân viên Ma_nhan_vien Bigint 20 Not null PK Mã nhân viên, tự động tăng Ma_nguoi_quan_lý Bigint 20 Not null Mã số người quản lý Ten_nhan_vien Varchar 250 Not null Tên của nhân viên Bi_danh Varchar 250 Not null Bí danh Ngay_sinh Date Not null y-m-d Ngày sinh Gioi_tinh Bool 1 Not null Giới tính Que_quan Varchar 250 Not null Quê quán Ho_khau Varchar 250 Not null Hộ khẩu Ma_dia_chi Bigint 20 Not null Mã địa chỉ Ma_quoc_tich Int 11 Not null Mã quốc tịch Ma_dan_toc Int 11 Not null Mã dân tộc Ma_ton_giao Int 11 Not null Mã tôn giáo Ma_tp_bt Int 11 Not null Mã thành phần bản thân Ma_tp_gd Int 11 Not null Mã thành phần gia đình So_dien_thoai Varchar 20 Not null Số điện thoại Email Varchar 20 Not null Địa chỉ email So_cmnd Varchar 20 Not null Số chứng minh nhân dân Noi_cap_cmnd Varchar 250 Not null Nơi cấp cmnd Ngay_cap_cmnd Date y-m-d Ngày cấp cmnd Ngay_vao_doan Date Not null y-m-d Ngày vào đoàn Noi_vao_doan Date Not null y-m-d Nơi vào đoàn Ngay_vao_dang Date Null y-m-d Ngày vào đảng Noi_vao_dang Varchar 250 Null Nơi vào đảng Ngay_nhap_ngu Date Null y-m-d Ngày nhập ngũ Ngay_xuat_ngu Date Null y-m-d Ngày xuất ngũ Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 2 tbl_dia_chi Địa chỉ của nhân viên Ma_dia_chi Bigint 20 Not null PK Mã địa chỉ tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ma_tinh_thanh Int 11 Not null Mã tỉnh thành Ma_quan_huyen Int 11 Not null Mã quận huyện Dia_chi Varchar 250 Not null Địa chỉ của nhân viên 3 tbl_ngoai_ngu Ngoại ngữ của nhân viên Ma_ngoai_ngu Int 11 Not null PK Mã ngoại ngữ tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ma_loai_ngoai_ngu Int 11 Not null Mã loại ngoại ngữ Ma_trinh_do Int 11 Not null Mã trình độ của ngoại ngữ Ghi_chu Varchar 250 Not null Thông tin ghi chú thêm Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 4 tbl_tin_hoc Tin học của nhân viên Ma_tin_hoc Int 11 Not null PK Mã tin học tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ma_loai_tin _hoc Int 11 Not null Mã loại tin học Ma_trinh_do Int 11 Not null Mã trình độ của tin học Ghi_chu Varchar 250 Not null Thông tin ghi chú thêm Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 5 Tbl_cong_tac Quá trình công tác của nhân viên Ma_cong_tac Bigint 20 Not null PK Mã quá trình công tác của nhân viên tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_cong_ty Varchar 250 Not null Tên công ty tổ chức nhân viên công tác Ma_chuc_vu Int 11 Not null Mã chức vụ của nhân viên Ngay_bat_dau Date Not null y-m-d Ngày bắt đầu công tác Ngay_ket_thuc Date Not null Y-m-d Ngày kết thúc làm việc Ghi_chu Text Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 6 Tbl_bang_cap Các loại bằng cấp mà nhân viên đạt được Ma_bang_cap Bigint 20 Not null PK Mã bằng cấp của nhân viên Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_bang_cap Varchar 250 Not null Tên bằng cấp của nhân viên Ten_nghanh Varchar 250 Not null Tên nghành đào tạo Hinh_thuc_dao_tao Int 11 Not null Mã hình thức đào tạo Ten_truong Varchar 250 Not null Tên trường mà nhân viên học tập Ma_nuoc Int 11 Not null Mã nước mà nhân viên học tập Nam_tot_nghiep Int 11 Not null Năm tôt nghiệp Ma_dat_loai Int 11 Not null Mã đạt loại của bằng cấp Ghi_chu Text Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 7 Tbl_khoa_dao_tao Các khóa đào tạo mà nhân viên tham gia Ma_khoa_dao_tao Bigint 20 Not null PK Mã khóa đào tạo mà nhân viên tham gia, giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_khoa_dao_tao Varchar 250 Not null Tên khóa đào tạo Ten_chung_chi Varchar 250 Not null Tên chứng chỉ Hinh_thuc_dao_tao Int 11 Not null Mã hình thức đào tạo Ten_truong Varchar 250 Not null Tên trường mà nhân viên học tập Ma_nuoc Int 11 Not null Mã nước mà nhân viên học tập Ngay_bat_dau Date Not null y-m-d Ngày bắt đầu khóa học Ngay_ket_thuc Date Not null y-m-d Ngày kết thúc khóa học Dat_loai Int Not null Mã đạt loại So_tien Int Not null Số tiền phải trả sau khóa học Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 8 Tbl_luong Quá trình diễn biến lương của nhân viên Ma_luong Bigint 20 Not null PK Mã lương của nhân viên, giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên He_so Int 11 Not null Hệ số lương của nhân viên Phu_cap Int 11 Not null Phụ cấp của nhân viên Trang_thai Bool 1 Not null Trạng thái là lương hiện thời hay đã hết hạn Ngay_bat_dau Date Not null y-m-d Ngày bắt đầu khóa học Ngay_ket_thuc Date Not null y-m-d Ngày kết thúc khóa học Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 9 Tbl_bao_hiem Quá trình bảo hiểm xã hội của nhân viên Ma_bao_hiem Bigint 20 Not null PK Mã quá trình bảo hiểm của nhân viên, giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên He_so_luong Int 11 Not null Hệ số lương Muc_luong Int 11 Not null Mức lương của nhân viên Trang_thai Bool 1 Not null Trạng thái là hiện thời hay quá khứ Ngay_bat_dau Date Not null y-m-d Ngày bắt đầu bảo hiêm Ngay_ket_thuc Date Not null y-m-d Ngày kết thúc bảo hiểm Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 10 Tbl_suc_khoe Hồ sơ sức khỏe của nhân viên Ma_suc_khoe Bigint 20 Not null PK Mã hồ sơ sức khỏe của nhân viên , giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Chieu_cao Int 11 Not null Chiều cao của nhân viên Can_nang Int 11 Not null Cân nặng của nhân viên Ma_nhom_mau Int 11 Not null Mã nhóm máu của nhân viên Ma_tt_sk Int 11 Not null Mã tình trạng sức khỏe của nhân viên Loai_benh Text Các tiền sử bệnh tật của nhân viên Ngay_thang Date Not null y-m-d Ngày tháng khám sức khỏe Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 11 Tbl_qh_gd Các quan hệ gia đình của nhân viên Ma_qh_gd Bigint 20 Not null PK Mã quan hệ gia đình , giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên ma_quan_he Int 11 Not null Mã loại quan hệ Ho_ten Varchar 250 Not null Họ tên người có quan hệ với nhân viên Ngay_sinh Date Not null Y-m-d Ngày sinh của người có quan hệ Giơi_tinh Bool 1 Not null Giới tính của người có quan hệ Nghe_nghiep Varchar 64 Not null Nghề nghiệp của người có quan hệ Noi_cong_tac Varchar 250 Not null Nơi công tac của người có quan hệ Dia_chỉ Varchar 250 Not null Địa chỉ của người có quan hệ Ma_loai_ho_so Bigint 20 Not null Mã loại hồ sơ Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 12 Tbl_tac_pham Các tác phẩm của nhân viên Ma_tac_pham Bigint 20 Not null PK Mã hồ sơ tác phẩm, giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_tac_pham Varchar 250 Not null Tên tác phẩm The_loai Varchar 250 Not null Tên thể loại của tác phẩm Nam_xuat_ban Int 11 Not null Năm xuất bản của tác phẩm Nha_xuat_ban Varchar 250 Not null Tên trường mà nhân viên học tập Noi_dung Text Not null Nội dung của của tác phẩm Giai_thuong Varchar 250 Các giải thưởng đạt được Ma_loai_ho_so Int 11 Not null Mã loại hồ sơ Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 13 Tbl_de_tai Các đề tài nghiên cứu của nhân viên Ma_de_tai Bigint 20 Not null PK Mã đề tài, giá trị tự động tăng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_de_tai Varchar 250 Not null Tên đề tài Cap_de_tai Varchar 250 Not null Cấp đề tài nghiên cứu Thoi_gian_bat_dau Date Not null Y-m-d Thời gian bắt đầu thực hiện đề tai Thoi_gian_ket_thuc Date Not null Y-m-d Thời gian kết thúc đề tai Noi_dung Text Not null Nội dung của đề tài Giai_thuong Varchar 250 Các giải thưởng đạt được Ma_loai_ho_so Int 11 Not null Mã loại hồ sơ Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 14 Tbl_khen_thuong Các khen thưởng của nhân viên Ma_khen_thuong Bigint 20 Not null PK Mã khen thưởng Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_khen_thuong Varchar 250 Not null Tên khen thưởng So_quyet_dinh Varchar 250 Not null Số quyết định khen thưởng Thoi_gian Date Not null Y-m-d Thời gian quyết định khen thưởng Noi_dung Text Not null Nội dung khen thưởng Ma_loai_ho_so Int 11 Not null Mã loại hồ sơ Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 15 Tbl_ky_luat Các kỷ luật của nhân viên Ma_ky_luat Bigint 20 Not null PK Mã kỷ luật Ma_nhan_vien Bigint 20 Not null Mã nhân viên Ten_ky_luat Varchar 250 Not null Tên kỷ luật So_quyet_dinh Varchar 250 Not null Số quyết định kỷ luật Thoi_gian Date Not null Y-m-d Thời gian quyết định kỷ luật Noi_dung Text Not null Nội dung kỷ luật Ma_loai_ho_so Int 11 Not null Mã loại hồ sơ Ghi_chu Varchar 250 Thông tin ghi chú Ma_loai_ho_so int 20 Not null Mã loại hồ sơ 16 Tbl_phong_ban Danh sách các phòng ban Ma_phong_ban Bigint 20 Not null PK Mã phòng ban của cơ quan Ma_phong_ban_cap_tren Bigint 20 Mã phòng ban cấp trên Ten_phong_ban Varchar 64 Not null Tên phòng ban Mo_ta Varchar 250 Mô tả vắn tắt phòng ban 17 Tbl_xac_nhan Bảng các thông tin xác nhận Ma_xac_nhan Bigint 20 Not null PK Mã xác nhận Ma_ho_so Bigint 20 Mã hồ sơ cần xác nhận Ma_loai_ho_so Int 11 Not null Mã loại hồ sơ xác nhận Thong_tin_xac_nhan Text Not null Thông tin xác nhận 18 Tbl_dinh_kem Bảng các thông tin dinh kem Ma_dinh_kem Bigint 20 Not null PK Mã dính kèm Ma_xac_nhan Bigint 20 Not null Mã xác nhận Thong_tin_dinh_kem Varchar 64 Not null Đường dẫn và tên file đính kèm 19 Tbl_tai_khoan Bản thông tin tài khoản của nhân viên ma_nhan_vien Bigint 20 Not null PK Mã nhân viên, tự động tăng Ma_nguoi_xac_nhan Bigint 20 Not null Mã người xác nhận Ten_tai_khoan Varchar 64 Not null Tên tài khoản Mat_khau Varchar 64 Not null Mật mã của tài khoản, được mã hóa them hàm MD5 Ma_the_tu Varchar 64 Not null Mã thẻ từ của nhân viên Thong_tin_the_tu Text Not null Thông tin thẻ từ Ma_nhom Int 11 Not null Mã nhóm của nhân viên 20 Tbl_nhom Nhóm ngừoi dùng Ma_nhom Bigint 20 Not null PK Mã nhóm Ten_nhom Varchar 20 Not null Tên nhóm người dùng Mo_ta Varchar 64 Not null Mô tả nhóm 21 Tbl_phan_quyen Bảng phân quyền Ma_quyen Bigint 20 Not null PK Mã quyền hạn Ma_nhom Int 11 Not null Mã nhóm người dùng Quyen_han Varchar 64 Not null Tên quyền hạn Ma_modul Int 11 Not null Mã modul tương ứng được gán với quyền hạn 22 Tbl_modul Bảng các modul của chương trình Ma_modul Int 11 Not null PK Mã modul của chương trình Ten_modul Varchar 64 Not null Tên modul 23 Tbl_hs_bao_cao Bảng các hồ sơ báo cáo Ma_bao_cao Bigint 20 Not null PK Mã báo cáo Ten_bao_cao Varchar 250 Not null Tên các loại báo cáo Noi_dung Text Not null Nội dung báo cáo 24 Tbl_mau_bao_cao Bảng các mẫu báo cáo Ma_ma_bao_cao Bigint 20 Not null PK Mã mẫu báo cáo Ten_mau_bao_cao Varchar 250 Not null Tên các mẫu báo cáo File_tempalte Varchar 64 Not null Đường dẫn và tên file nội dung báo cáo 25 Tbl_dinh_kem Bảng các thông tin dinh kem Ma_dinh_kem Bigint 20 Not null PK Mã dính kèm Ma_xac_nhan Bigint 20 Not null Mã xác nhận Thong_tin_dinh_kem Varchar 64 Not null Đường dẫn và tên file đính kèm 26 Tbl_nuoc Bẳng các quốc gia Ma_nuoc Int 11 Not null PK Mã các nước Ten_nuoc Varchar 64 Not null Tên nước 27 Tbl_tinh_thanh Bảng các tỉnh thành Ma_tinh_thanh Int 11 Not null PK Mã tỉnh thành, tự động tăng. Ma_nuoc Int 11 Not null Mã nước Ten_tinh_thanh Varchar 64 Not null Tên tỉnh thành 28 Tbl_quan_huyen Bảng các quận huyện Ma_quan_huyen Bigint 20 Not null PK Mã các quận huyện Ma_tinh_thanh Int 11 Not null Mã tỉnh thành tương ứng với quận huyện 29 Tbl_td_vh Bảng trình độ văn hóa Ma_td_vh Int 11 Not null PK Mã trình độ văn hóa Ten_td_vh Varchar 64 Not null Tên trình độ văn hóa 30 Tbl_td_bc Bảng các loại trình độ bằng cấp Ma_td_bc Int 11 Not null PK Mã trình độ bằng cấp Ten_td_bc Varchar 64 Not null Tên trình độ bằng cấp 31 Tbl_ngoai_ngu Bảng các loại ngoại ngữ Ma_ngoai_ngu Int 11 Not null PK Mã các loại ngoại ngữ Ten_ngoai_ngu Varchar 64 Not null Tên các loại ngoại ngữ 32 Tbl_td_nn Bảng các loại trình độ ngoại ngữ Ma_td_nn Int 11 Not null PK Mã trình độ ngoại ngữ Ten_td_nn Varchar 64 Not null Tên trình độ ngoại ngữ 33 Tbl_tin_hoc Bảng các loại tin học Ma_tin_hoc Int 11 Not null PK Mã các loại tin học Ten_tin_hoc Varchar 64 Not null Tên các lọai tin học 34 Tbl_td_th Bảng các loại trình độ tin học Ma_td_th Int 11 Not null PK Mã trình độ tin học Ten_td_th Varchar 64 Not null Tên trình độ tin học 35 Tbl_ht_dt Bảng các loại hình thức đào tạo Ma_ht_dt Int 11 Not null PK Mã hình thức đào tạo Ten_ht_dt Varchar 64 Not null Tên hình thức đào tạo 36 Tbl_tt_sk Bảng các loại tình trạng sức khỏe Ma_tt_sk Int 11 Not null PK Mã tình trạng sức khỏe Ten_tt_sk Varchar 64 Not null Tên tình trạng sức khỏe 37 Tbl_nhom_mau Bảng các loại nhóm mau Ma_nhom_mau Int 11 Not null PK Mã nhóm máu Ten_nhon_mau Varchar 64 Not null Tên nhóm máu 38 Tbl_tp_bt Bảng thành phần bản thân Ma_tp_bt Int 11 Not null PK Mã thành phần bản thân Ten_tp_bt Varchar 64 Not null Tên thành phần bản thân 39 Tbl_dan_toc Bảng các dân tộc Ma_dan_toc Int 11 Not null PK Mã dân tộc Ten_dan_toc Varchar 64 Not null Tên dân tộc 40 Tbl_ton_giao Bảng các tôn giáo Ma_ton_giao Int 11 Not null PK Mã tôn giáo Ten_ton_giao Varchar 64 Not null Tên tôn giáo 41 Tbl_chuc_vu Bảng các loại chức vụ Ma_chuc_vu Int 11 Not null PK Mã chức vụ Ten_chuc_vu Varchar 64 Not null Tên chức vụ 42 Tbl_quan_he Bảng các loại quan hệ Ma_quan_he Int 11 Not null PK Mã quan hệ Ten_quan_he Varchar 64 Not null Tên quan hệ gia đình 43 Tbl_phien Bảng lưu thông tin về phiên truy cập của người dùng Phien_id bigint 20 Not null PK Mã quan hệ Ma_phien Varchar 64 Not null Mã phiên do chương trình sinh ra khi người dùng truy cập hệ thống Ma_nguoi_dung Bigint 20 Not null Mã người dùng truy cập hệ thống tương ứng 44 Tbl_phien_chuc_nang Bảng lưu thông tin về phiên truy cập của người dùng và chức năng tương ứng Tbl_id bigint 20 Not null PK Mã quan hệ Phien_id Bigint 20 Not null Mã phiên tương ứng với ca truy nhập của người dùng Ma_chuc_nang Int 11 Not null Mã chức năng mà người dùng truy cập trong phiên đó Thoi_gian Date Not null Thời gian truy cập đối với chức năng tương ứng Chương 3: Xây dựng và cài đặt chương trình 3.1. Giới thiệu công nghệ áp dụng Hiện nay, có rất nhiều ngôn ngữ lập trình trên mạng: ASP, FOXWEB, JSP, PHP..v..v.. Cùng với chúng cũng có rất nhiều hệ quản trị CSDL như: MySQL, DB2, SQL Server ..v..v.. Trong hệ thống này, nhóm chúng em chọn ngôn ngữ lập trình PHP, và hệ quản trị cơ sở dữ liệu MySQL. 3.1.1. Ngôn ngữ PHP 3.1.1.1. Giới thiệu PHP được dùng để thay thể cho Hypetext Preprocessor (Bộ tiền xử lý siêu văn bản), là một ngôn ngữ kịch bản nhúng HTML phía server. Phần lớn cú pháp của nó mượn của C, Java và Perl. Ngoài ra, nó cũng có thêm một số đặc trưng riêng. Ngôn ngữ PHP cho phép người phát triển web viết các trang web động một cách nhanh chóng. Chúng ta xem một ví dụ đơn giản: 1. 2. 3. Example 4. 5. 6. <?php 7. echo “Đây là một ví dụ về PHP”; 8. ?> 9. 10. Khác với các kịch bản CGI được viết trong một số ngôn ngữ khác như Perl hoặc C – thay vào việc một chương trình với nhiều lệnh để xuất HTML, ta chỉ cần viết một kịch bản HTML với một vài mã nhúng để làm một việc gì đó (trong ví dụ trên là xuất ra câu “Đây là một ví dụ về PHP”). Mã nguồn của PHP được đặt trong một cặp thẻ đặc biệt (‘’). Đặc điểm phân biệt PHP với một số ngôn ngữ khác như Java script là mã của nó được thực hiện phía server. Các đoạn mã PHP sẽ được thực hiện trên server trước khi truyền kết quả cho máy client, do đó người dùng phía client sẽ không thể biết được đoạn mã thật của PHP. Đây cũng là một giải pháp khá hay cho việc bảo mật mã nguồn của PHP. ™ PHP có thể làm gì ? Ở mức đơn giản nhất, PHP có thể làm được bất cứ điều gì mà một chương trình CGI có thể làm như lấy các form dữ liệu, sinh nội dung các trang động hoặc gửi và nhận càc cookie. Có lẽ đặc tính mạnh nhất và quan trọng nhất của PHP là nó hỗ trợ những CSDL có phạm vi rộng. Việc viết những trang web có CSDL hết sức đơn giản. Những CSDL được PHP hỗ trợ: Adabas D Ingres Oracle (OCI7 and OCI8) dBase InterBase Ovrimos Empress FrontBase PostgreSQL FilePro (chỉ đọc) mSQL Solid Hyperware Direct Ms-SQL Sybase IBM DB2 MySQL Velocis Informix ODBC Unix dbm PHP cũng hỗ trợ việc liên kết với các dịch vụ khác sử dụng giao thức như IMAP, SNMP, NNTP, POP3 … thậm chí cả HTTP. Ta cũng có thể sử dụng những socket mạng thô với các giao thức khác nhau. ™ Những nét lịch sử chính của PHP PHP bắt đầu được hình thành vào mùa thu năm 1994 bởi Rasmus Lerdorf. Phiên bản đầu tiên non_released được sử dụng trên trang chủ của ông để lưu giữ dấu vết những người xem trực tuyến lý lịch của ông. Phiên bản này được sử dụng rộng rãi vào đầu năm 1995 và được biết đến như là công cụ xây dựng trang chủ cá nhân (Personal Home Page Tools). Hiện nay đã có phiên bản PHP 5. 3.1.1.2. Một số cú pháp cơ bản của PHP ™ Các thẻ chứa đoạn mã PHP Có 4 cách viết một một đoạn mã PHP trong một trang web Cách thứ nhất: đoạn mã PHP được chứa trong cặp thẻ ‘’. Cách này chỉ thực hiện được khi thuộc tính cho phép dùng thẻ ngắn (short_open_tag) trong file cấu hình của PHP được thiết lập là enable (Thuộc tính này thường được để mặc định là enable) Ví dụ: Cách thứ hai: đoạn mã PHP được chứa trong cặp thẻ ‘’. Đây là cách đầy đủ nhất của PHP. Ví dụ: Cách thứ ba: đoạn mã PHP được chứa trong cặp thẻ ‘’ và ‘’. Cách này được đặt mặc định giống như các ngôn ngữ khác trong các trang HTML Ví dụ: echo “Đây là cách thứ ba”; Cách thứ tư: đoạn mã PHP được chứa trong cặp thẻ ‘<%’ hoặc ‘<%=’ và ‘%>’. Cách này chỉ có tác dụng khi thuộc tính sử dụng các thẻ kiểu ASP (ASP-style) được thiết lập là enable trong file cấu hình của PHP Ví dụ: ™ Ngăn cách các lệnh Các lệnh trong PHP được ngăn cách nhau bởi dấu chấm phẩy ‘;’ giống như trong ngôn ngữ C. Thẻ đóng đoạn mã PHP (‘?>’) cũng có tác dụng kết thúc câu lệnh như dấu ‘;’. ™ Chú giải PHP hỗ trợ các chú giải giống như của C, C++ và các chú giải kiểu shell trong Unix. Có hai loại chú giải: - Chú giải trên một dòng, được bắt đầu bằng dấu ‘//’. Các ký tự phía sau cặp ký hiệu này đều được coi là phần chú thích. Ví dụ: <?php Echo “Chú thích kiểu C++”; //Một chú thích kiểu C++ Echo “Chú thích kiểu shell”; /# Một chú thích kiểu shell trong Unix ?> - Chú giải trên nhiều dòng, được ký hiệu bởi cặp dấu bắt đầu ‘/*’ và kết thúc ‘*/’. Mọi ký tự trong cặp dấu này đều được coi là phần chú thích. Ví dụ: <?php /* một ví dụ về chú thích trên nhiều dòng */ Echo “Chú thích trên nhiều dòng”; ?> ™ Kiểu PHP hỗ trợ một số các kiểu sau: Kiểu mảng Có hai loại mảng: mảng một chiều và mảng nhiều chiểu. Một số hàm hỗ trợ liên quan đến mảng trong PHP: + Các hàm tạo mảng: list(), array() + Các hàm sắp xếp mảng: asort(), ksort(), rsort(), sort(), uasort(), usort() và uksort(). + hàm đếm số phần tử mảng: count() + các hàm duyệt mảng: next(), prev(), each() +… Kiểu số + các kiểu số con trỏ động có kích thước về độ lớn khác nhau. Độ lớn tối đa của chúng xấp xỉ 1.8e308 = 1.8*10308 + các kiểu số nguyên: PHP có các kiểu số nguyên giống như C. Tuy nhiên, kích thước của chúng đều là các số 32 bit. Một số hàm liên quan đến kiểu số + Các hàm lượng giác: sin(), cos(), tan(), acos(), asin(), atan() … + các hàm số học: abs(), exp(), pow(), log(), log10(), max(), min(), sqrt()…  + các hàm về cơ số: base_convert(), bindec(), decbin(), hexdec(), dechex()… + các hàm làm tròn: ceil(), floor(), round()… + các hàm khác: getrandmax(), rand(), pi()… Các kiểu đối tượng PHP cũng hỗ trợ việc khai báo các đối tượng giống như C++. Các đối tượng được khai bao như sau: Class tên_lớp { Khai báo các thuộc tính Khai báo các phương thức } Kiểu xâu Đây là kiểu hay dùng nhất trong PHP. Các quy tắc về xâu trong PHP giống như trong C. Các xâu được đặt trong cặp dấu ‘’ hoặc “”. Một số hàm liên quan đến xâu: +Các hàm in xâu: echo(), print(), printf(), flush() +Các hàm xoá ký tự trắng: chop(), trim(), rtrim(), ltrim() +Các hàm xử lý xâu: strcmp(), substr(), str_replace()… +Các hàm tìm kiếm trên xâu: strchr(), strstr(), stristr()… +Hàm lấy độ dài xâu: strlen() + … ™ Cấu trúc điều khiển PHP có các cấu trúc điều khiển tương tự như C. Nó bao gồm: Cấu trúc rẽ nhánh PHP có 2 kiểu cấu trúc rẽ nhánh: 1. if (biểu thức) { [Khối lệnh] } Hoặc if (biểu thức) { [Khối lệnh 1] } else { [Khối lệnh 2] } 2. switch (tên biến) { case giá trị 1: [Khối lệnh 1] case giá trị 1: [Khối lệnh 1] … } + include_once(): Giống như hàm include nhưng nó chỉ thay thế mã lệnh của file một lần. 3.1.2. Hệ quản trị cơ sở dữ liệu MySQL 3.1.2.1 Giới thiệu về MySQL Trước đây, người ta thường dùng mSQL để kết thao tác cơ sở dữ liệu qua các thủ tục. Mặc dù mSQL có thể cung cấp hầu hết các chức năng phục vụ cho việc khai thác dữ liệu nhưng sau một thời gian kiẻm thử dần dần xuất hiện các vần đề về nó. MySQL không đủ nhanh và linh hoạt như yêu cầu. Do đó, người ta đã nghĩ tới một phiên bản SQL mới. MySQL ra đời, ngay từ phiên bản đầu tiên nó đáp ứng gần như khá hoàn hảo các yêu cầu của người dùng. MySQL được xây dựng chủ yếu dựa trên các hàm API giống như trong MySQL. Người ta sử dụng trực tiếp cá hàm API truy cập hệ thống chứ không dùng các hàm trung gian của các công ty thứ ba giống như trong MySQL, do đó tốc độ của MySQL vượt xa so với MySQL trước đây. Do nó có mã nguồn mở nên các phiên bản MySQL phát triển rất nhanh. Nó được cung cấp các tính năng ngày càng mạnh hơn, linh hoạt hơn phiên bản đầu tiên rất nhiều. 3.1.2.2. Các đặc trưng của MySQL MySQL là một hệ quản trị cơ sở dữ liệu Một CSDL là một tập hợp dữ liệu có cấu trúc. Nó có thể là bất cứ thứ gì từ danh sách các loại hàng hoá đơn giản đến một triển lãm tranh hay là một lượng lớn thông tin trên mạng. Để truy cập và xử lý dữ liệu được lưu trữ trong cơ sở dữ liệu máy tính ta cần phải có một hệ quản trị cơ sở dữ liệu như MySQL. Từ khi các máy tính trở thành một phương tiện khá tỏttong việc điều khiển một lượng lớn dữ liệu. Việc quản trị cơ sở dữ liệu đóng vai trò trung tâm tính toán. Nó giống như một tiện ích độc lập hay một phần của các ứng dụng khác. MySQL là một hệ quản trị cơ sở dữ liệu quan hệ Một cơ sở dữ liệu quan hệ lưu trữ dữ liệu trong các bảng tách rời nhau thì thích hợp hơn là đưa tất cả dữ liệu vào một nơi lưu trữ lớn. Điều này làm tăng tốc độ và tính mềm dẻo. Các bảng được liên kết bởi các quan hệ được định nghĩa làm cho nó có thể kết nối dữ liệu ở các bảng khác nhau trong một yêu cầu. SQL (Structured Query Language) là một phần của MySQL. Nó là ngôn ngữ được chuẩn hoá và được sử dụng phổ biến nhất để truy cập cơ sở dữ liệu. MySQL là phần mềm có mã nguồn mở Một phần mềm có mã nguồn mở là phầnmềm được dùng miễn phí cho mọi người. Do đó, mọi người có thể nghiên cứu mã nguồn và thay đổi nó cho phù hợp với nhu cầu sử dụng của từng người. Hiện nay, MySQL có một tập các chức năng rất lớn và đa dạng. Ngoài ra, nó còn được bổ sung các tính năng khá mạnh khác như: khản năng kết nối, khả năng bảo mật … MySQL là một phầnmềm thân thiện MySQL là một hệ quản trị cơ sở dữ liệu có tốc độ xử lý khá nhanh và rất đáng tin cậy. Nó cung cấp một số công cụ cho phép ta tìm kiếm thông tin một cách hiệu quả hơn rất nhiều so với cá hệ quản trị cơ sở dữ liệu khác. Theo một số thống kê cho thấy, dung lượng và tốc độ xử lý của MySQL chỉ đứng sau Oracle. Tuy nhiên nó lại chiếm ưu thế hơn Oracle ở chỗ kích thước của nó lại nhỏ hơn rất nhiều, rất phù hợp với các ứng dụng vừa và nhỏ. Các đặc tính kỹ thuật của MySQL MySQL là một hệ thống có mô hình client / server chứa server SQL đa luồng hỗ trợ các chương trình ứng dụng phía sau (trong mạng cục bộ, backend là các chương trình được lưu trữ trên máy chủ dùng để hoàn thành cá nhiệm vụ xử lý mà chương trình đó được thiết kế để thực hiện, còn fontend là các chương trình phía trước dùng để điều khiển giao tiếp với từng user ở các client), hỗ trợ các thư viện, chương trình client khác nhau, các công cụ quản trị và giao diện lập trình. 3.1.2.3. Một số thao tác cơ sở dữ liệu trong MySQL ™ Các kiểu dữ liệu trong MySQL Kiểu xâu Xâu là một tập hợp cá ký tự liên tiếp nhau và được đặt trong cặp dấu “” hoặc ‘’. Các quy tắc về xâu giống như trong ngôn ngữ C. MySQL hỗ trợ một số hàm thao tác xâu: +Các hàm về ký tự: ascii(), ord(), char()… +Các hàm cắt ký tự trắng: trim(), ltrim(), rtrim()… +Các hàm về thao tác xâu: concat(), left(), right(), mid(), replace(), insert()… +Các hàm về kiểu chữ: ucase(), upper(), lcase(), lower()… +Các hàm khác: repeat(), elt()… Kích thước của mỗi xâu là 255. Để lưu trữ các xâu có kích thước lớn hơn, ta có thể dùng các kiểu khác như: text, blob… Kiểu số MySQL hỗ trợ các kiểu số sauL: +các kiểu số nguyên: int, smallint, tinyint… +các kiểu số thực: float, double, real, numeric, decimal… Ngoài ra MySQL còn hỗ trợ một số hàm toán học sau: + Các hàm lượng giác: sin(), cos(), tan(), acos(), asin(), atan() … + các hàm số học: abs(), exp(), pow(), log(), log10(), max(), min(), 3.2. Một số giao diện chính của chương trình Chương 4: Module bảo mật bằng hệ thống thẻ nhớ (smart card) và đầu đọc thẻ ACR30 4.1.Giới thiệu chung 4.1.1. Mở đầu Hiện nay hầu hết các phần mềm quản lý nói chung hay quản lý nhân sự nói riêng chạy trên nền web đều chỉ có một lớp bảo mật duy nhất. Đó chính là hệ thống User / Password được đặt trong cơ sở dữ liệu. Có rất nhiều nguyên do để một người lạ có thể xâm nhập vào hệ thống của bạn. Có thể xuất phát từ phía người dùng như: Sơ xuất để lộ mật khẩu, máy tính cá nhân bị nhiễm virus, trojan, … Và cũng có thể từ việc cơ sở dữ liệu bên server không được đảm bảo có thể bị xâm nhập… Và có thể còn nhiều lý do khác nữa. Trong hệ thống quản lý nhân sự này chúng em đưa vào thêm một lớp bảo mật nữa nhằm tăng thêm tính an toàn. Trong module bảo mật này chúng ta dùng một loại thẻ nhớ để đặc trưng cho các User. Các thẻ nhớ như là Identify Card cho phép người dùng có thể truy cập vào hệ thống hay không? Hiện nay có rất nhiều loại thẻ nhớ, và các ứng dụng về thẻ nhớ được dùng khá rộng rãi, hiệu quả trên nhiều lĩnh vực về kinh tế, công nghiệp, giáo dục, … trên thế giới. Mỗi một thẻ nhớ có thể lưu nhiều thông tin của người dùng và có thể làm đại diện cho người dùng. Trong phạm vi chương trình này chúng ta nghiên cứu đến lọai thẻ nhớ ACOS1 và đầu đọc thẻ ACR30U. 4.1.2. Giới thiệu chung về ACS (Advanced card system) và sản phẩm thẻ nhớ, đầu đọc thẻ nhớ Ngày nay hệ thống thẻ và đầu đọc thẻ nhớ không chỉ giới hạn trong một số lĩnh vực cụ thể nào nữa. Mà nó ngày càng trở nên phổ biến trên toàn bộ các lĩnh vực như là Truyền thông không dây (Wireless Communicatios), Thẻ nhận dạng trong chính phủ (Government ID cards) hay là công tác bảo mật trên internet (Internet security). Được xác nhận đưa thêm các giá trị, thông tin quan trọng trong giao dịch đem lại sự hiệu quả, tin cậy và môi trường an toàn cho toàn bộ các hoạt động, trong vài năm tới hệ thống thẻ và đầu đọc thẻ nhớ được dự đoán là có những bước phát triển rất mạnh mẽ do nhu cầu ngày càng lớn. ACS một công ty chuyên cung cấp thẻ nhớ và đầu đọc rất tin tưởng vào phương hướng phát triển và các cơ hội giao dịch rộng lớn sẽ mở ra cho các nhà cung cấp thẻ và đầu đọc thẻ nhớ. ACS là một nhà sản xuất thẻ nhớ thành lập năm 1995. Với sứ mệnh là trở thành công thi đi đầu trong việc cung cấp hệ thống thẻ trên cơ sở là các giải pháp cho nền thương mại điện tử toàn cầu. ACS sản xuất và cung cấp các hệ thống đọc, ghi chất lượng cao, giúp cho nhiều ngành công nghiệp khác nhau dễ dàng chấp nhận các ứng dụng thẻ. ACS có trụ sở ở Hồng Kông và là một công ty đi đầu trong việc giới thiệu hệ thống thẻ nhớ qua giao diện USB thích hợp với máy tính cá nhân PC. Và cũng là một công ty đi đầu trong việc đề nghị đầu đọc dựa trên cơ sở single-ASIC (Application Specific Integrated Circurt). Hiện tại ACS đã thiết lập được nhiều mối quan hệ rất tốt đẹp với nhiều đối tác quan trọng trong nền công nghiệp thẻ nhớ trên toàn thế giới. Các sản phẩm của ACS đã được bán ra trên 70 nước ở các Châu mỹ, Châu âu, Châu á và một số nước khác. Hình ảnh minh họa đầu đọc thẻ ACR30U và thẻ nhớ ACOS1 ACR30U smart card reader ACOS1 8Kbyte micro processor-based card 4.1.3. Bộ phát triển cho các ứng dụng thẻ nhớ (Development Kit for smart card applications) Bộ công cụ phát triển (AC-Kit Smart Card Development pack) cung cấp sự phát triển và tùy chọn các ứng dụng một cách hiệu quả và hệ thống sử dụng thẻ nhớ, các thiết bị đầu cuối , máy tính cá nhân. Được đóng gói một cách hoàn thiện bao gồm tất cả các thành phần cần thiết yêu cầu cho phát triển ứng dụng. Các công ty phần mềm có thể sử dụng kết hợp công nghệ thẻ nhớ vào ứng dụng hiện tại của họ. Các công ty trong nền công nghiệp thẻ nhớ đang tìm kiếm các ứng dụng mới có thể phát triển hệ thống theo yêu cầu của họ cũng như của khách hàng. ACS Smart card reader/writer ACR30 là một giao diện cho truyền thông giữa máy tính nói chung hay máy tính cá nhân nói riêng và một thẻ nhớ. Các loại thẻ nhớ khác nhau có các hệ thống câu lệnh riêng biệt và các giao thức truyền thông khác nhau. Điều đó ngăn cản trong hầu hết các trường hợp kết nối giữa một máy tính và một thẻ nhớ. ACR30 Reader/Writer thiết lập một giao diện chung từ một máy tính đến một thẻ nhớ cho rất nhiều loại thẻ. Bằng việc nắm bát những điểm riêng biệt của tứng loại thẻ, nó sẽ giải thoát cho các nhà lập trình phần mềm khỏi sự rắc rối liên quan đế các đặc điểm công nghệ khác nhau, cái mà trong nhiều trường hợp không thuận tiện cho việc cài đặt hệ thống thẻ. ACR30 Smart Card Reader/Writer được kết nối với máy tính thông qua giao diện nối tiếp bất đồng bộ (RS-232) hay là giao diện USB. Đầu đọc chấp nhận các lệnh gửi từ máy tính mang theo các hàm chỉ định vào thẻ nhớ và trả về các dữ liệu yêu cầu hoặc các thông tin trạng thái. ACR30 là đầu đọc rất hiệu quả và hỗ trợ tất cả các thẻ nhớ dựa trên cơ sở MCU với giao thức T=0 (Bit oriented) hoặc T=1 (Block oriented) và hầu hết thẻ nhớ đang được lưu hành ngày nay. Nét đặc trưng của bộ phát triển ACR30 Smart card readers: Bao gồm cả đầu đọc USB và RS232 thích hợp với ISO 7816-1/2/3 và PC/SC Có thể đọc và ghe tất cả thẻ với các bộ vi xử lý có giao thức T=0 hoặc T=1 Có thể đọc và ghi hầu hết thẻ nhớ phổ biến Thích hợp với hầu hết nền tảng máy tính cá nhân (PC platforms) Balance reader Hỗ trợ thẻ nhớ và các thẻ MCU yêu cầu bởi khác hàng (như VISA Cash, Proton, Mondex…) Các hàm tùy chọn để ghi và hiện thị các chuyển giao trước đây Bộ nguồn gồm 2 miếng 3V, pin lithium kết nối theo hàng Màn hình tinh thể lỏng hiện thị 16 ký tự Nặng 50g Nhiệt độ hoạt động từ 0 -> 50 độ C Bộ card dùng kiểm thử bao gồm 5x ACOS1 microprocessor-based card with DES/Triple DES and MAC security capability, 8 K EEPROM for user data 5x SLE 4442 256 byte Memory card with write protect function and security logic 5 x SLE 4428 1 Kbyte Memory card with write protect function and security logic Nội dung trong đĩa CD rom kèm theo Software drivers supporting Windows 98, Me, NT (serial), 2000, XP, and Linux Proprietary device driver to facilitate easy application development PC/SC compliant IFD handler 32-bit OCX file Demo Program, Card tool, Sample code … 4.1.4. Đặc điểm kỹ thuật và yêu cầu hệ thống 4.1.4.1 Các đặc điểm cơ bản của dòng sản phẩm ACR30 ISO 7816-1/2/3 and PC/SC Compliant Certified by CE, FCC, EMV and Microsoft WHQL Read and write ALL microcontroller cards with T=0 and T=1 protocols Read and write the popular memory card types in the market: o Siemens: SLE4406, SLE4418, SLE4428,SLE4432, SLE4442 o Atmel: AT88SC06, AT24C01-16 o STMicroelectronics: ST1305, ST14C02C, ST14C04C Note: Card manufacturers using the above-mentioned chips may have different names for their cards. These cards are likewise supported by ACR30. Examples are: Gemplus: GPM103, GFM2K, GFM4K, GPM2K, GPM8K Schlumberger: Primeflex Store 2K/8K, Open 2K/4 Interface library for efficient PC application software development o 32-bit DLL files for Windows 98,Me, NT and 2000 o PC/SC compliant IFD handler Compatible with most PC platforms: Windows 98, Me, NT, 2000 and XP, Linux 4.1.4.2. Yêu cầu kỹ thuật Interface RS-232 (Serial) or USB Supply Voltage Regulated 5V DC Supply Current <100mA (without smart card) Operating Temperature 0 - 50 °C CLK Frequency 3.68 / 4 MHz Standards / Certifications ISO 7816-1/2/3, PC/SC, CE, FCC Operating System Support Windows 98, Me, NT, 2000 and XP, Linux 4.1.5. Cài đặt và gỡ bỏ driver cho đầu đọc thẻ ( Smart card reader) 4.1.5.1. Cài đặt driver cho thẻ đọc (Proprietary driver) a) Sau khi người dùng chạy “setup.exe” trong thư mục “AC-Kit driver”. Màn hình đầu tiên hiện ra. Chọn “Next” Chú ý : Không kết nối đầu đọc ACR30 với PC đến khi nhận được lời hướng dẫn từ chương trình cài đặt b) Người sử dụng phải lựa chọn đầu đọc thẻ thích hợp từ hộp combo box. Chú ý U - USB SP - Serial Pnp S – Serial RS-232 c) Trường hợp này ta chọn ACR30U Chọn “Next” để tới bước tiếp theo d) Chọn “install” Chú ý : Không kết nối với thiết bị đầu đọc đến khi có hướng dẫn e) Chắc chắn rằng bạn không kết nối thiết bị đầu đọc vào máy tính. Chọn “next” f) Tại bước này bạn hãy kết nối đầu đọc vào máy và chọn “OK” Chọn “Yes” cho hộp thoại Digital Signature (Chữ ký số) Bước cuối cùng bạn chọn “Finish” 4.1.5.2. Sơ đồ kết nối thiết bị và máy tính Sơ đồ kết nối đầu đọc thẻ nhớ với giao diện USB Sơ đồ kết nối đầu đọc thẻ nhớ với giao diện RS-232 4.1.5.3. Gỡ bỏ driver của đầu đọc (Proprietary driver) Để gỡ bỏ driver của đầu đọc người sử dụng phải chạy lại trình “cài đặt” lại một lần nữa. Màn hình bên sẽ xuất hiện Chọn “next” Trình cài đặt có thể dò ra được driver trước đó đã cài đặt Chọn “next” để gỡ bỏ driver Khởi động lại hệ thống để đảm bảo driver đã được gỡ bỏ thành công Chọn “Ok” để khởi động lại 4.2. Xây dựng chương trình đọc thông tin thẻ nhớ tích hợp với hệ thống website chương trình chính 4.2.3.Phạm vi bài toán 4.2.3.1. Nội dung Xây dựng chương trình đọc thông tin người dùng từ thẻ nhớ. Tích hợp được với hệ thống quản lý nhân sự chạy trên server. 4.2.3.2. Chức năng Xây dựng thành công module bảo mật, đăng nhập hệ thống bước một qua thẻ nhớ (smart card) 4.2.3.3. Đối tượng sử dụng Toàn bộ người dùng sử dụng hệ thống quản lý nhân sự trong tài liệu 4.2.4. Phân tích Mục đích của chương trình là tích hợp được module bảo mật dựa vào hệ thống thẻ nhớ của người dùng (được cấp phát), tích hợp vào module chương trình chính. Hiện nay đa số các chương trình quản lý nhân sự chỉ có một lớp bảo mật duy nhất bao gồm thông tin User, Password được lưu trong cơ sở dữ liệu. Toàn bộ module bảo mật đều gói gọn trên server. Mô hình tiến trình đăng nhập các chương trình như sau. Tiến trình đăng nhập c b a Database User Server Chú thích : a) Thông tin username + password b, c) Thông tin kiểm tra giữa server và csdl (username/password) 4.2.5. Thiết kế Toàn bộ chương trình được chia thành 2 module chính. Một module chạy trên máy khách (Client) và một module chạy trên server. Phía Client : Đọc thông tin cá nhân của User từ thẻ nhớ cá nhân và submit lên server được phát triển dựa vào ngôn ngữ lập trình C/C++. Phía Server: Tạo và quản lý tài khoản thông tin User mới tương ứng với thẻ nhớ cấp phát cho mỗi người dùng. Kiểm tra thông tin được submit phía Client và trả về kết quả đăng nhập hệ thống Ngôn ngữ php và Cơ sở dữ liệu mysql Tiến trình đăng nhập (mới) g f c b e d a Database User Server Chú thích: a) Thông tin thẻ nhớ b, c) Thông tin kiêm tra giữa server và csdl (thông tin thẻ) d) Thông tin phản hồi quá trình đăng nhập thẻ nhớ e) Thông tin username/password f, g) Thông tin kiểm tra giữa server và csdl (thông tin username/password) Có hai phương thức giao tiếp chính giữa Client – Server Module Client triệu gọi trực tiếp module server thông qua query string. Phương thức này dễ phát triển, dễ hiểu tuy nhiên lại có tính bảo mật không cao. Chuyển thông tin từ client lên server thông qua lập trình Socket. Phương thức này có tính bảo mật tốt hơn. Chương trình demo chúng ta sử dụng phương thức giao tiếp thứ nhất. 4.2.6. Công cụ phát triển module Client Các ứng dụng đọc thẻ nhớ trên máy tính là các ứng dụng còn khá mới mẻ với sinh viên nói chung, và nhóm làm khóa luận nói riêng. Theo tài liệu được cung cấp đa số các ứng dụng này có thể được phát triển dựa trên Delphi, VB, VC++, C#… Ở đây chúng em lựa chọn một công cụ khá phổ biến đó là Visual C++ với ngôn ngữ khá phổ biến với các lập trình viên là C/C++. Dùng Visual C++ ta có thể sử dụng thư viện MFC tiện lợi của nó. 4.2.7. Giới thiệu qua về ngôn ngữ C/C++ và Visual C++ C và C++ là hai trong những ngôn ngữ lập trình quan trọng nhất trên thế giới hiện nay. Ngôn ngữ C được phát minh bởi Diniis Ritchie vào năm 1970. C là một ngôn ngữ bậc trung, nó bao gồm các cấu trúc điều khiển của một ngôn ngữ bậc cao với khả năng tính toán bits, bytes, và pointers. Do đó C mang đến cho người lập trình viên gần như toàn bộ để điều khiển toàn bộ máy tính. C đã được chuẩn hóa lần thứ nhất vào năm 1989 theo American National Standards Institue (ANSI). C++ được tạo ra và phát triển bới Bjarne Stroustrup vào năm 1979. Sự phát triển và tinh lọc C++ là một nỗ lực rất lớn, mở rộng vào những năm 1980 và gần như các năm 1990. Cuối cùng vào 1998 một bản chuẩn C++ ANSI/ISO được thông qua. C++ là phiên bản hướng đối tượng của C. C++ xây dựng dựa trên nền tảng là C89. . Có thể nói rằng đến bây giờ C++ vẫn là một trong những ngôn ngữ mạnh nhất trong các ngôn ngữ lập trình. Visual C++ là một bộ công cụ phát triển ứng dụng dành cho các lập trình viên C++ phát hành bởi Microsoft. Visual C++ hỗ trợ lập trình hướng đối tượng trên nền tảng Windows 32bits với một Integrated development environment (IDE), bộ dịch C/C++, và một bộ thư viện kèm theo Microsoft Foundation Class (MFC). Môi trường IDE bao gồm App Wizard, Class Wizard, …và nhiều công cụ khác giúp cho công việc lập trình trở nên dễ dàng hơn. Phiên bản đầu tiên của Visual C++ được Microsoft giới thiệu vào năm 1993 tiếp đó phiên bản 4.0 ra mắt vào năm 1996. Trong chương trình này chúng ta dùng phiên bản 6.0 phát hành năm 1998. 4.2.8. Giao diện chính của chương trình chạy trên client Các Command Get Card Info : Kết nối với thẻ nhớ Nhận thông tin từ thẻ nhớ (Giá trị ATR String) lưu giá trị vào biến chương trình Send : Gửi thông tin thẻ nhớ chứa trong biến gửi lên url 4.2.9. Các hạn chế và phương hướng phát triển chương trình Do chưa hiểu rõ hết được những thông tin về quản lý thẻ nhớ nên trong module vẫn còn có thiếu sót. 4.2.9.1 Những hạn chế còn tồn tại Chương trình đọc thông tin từ thẻ nhớ đặt phía Client do vậy sẽ phải có quá trình chuyển giao thông tin giữa Client và Server. Điều này làm tăng khả năng bị xâm nhập của hệ thống Chưa đưa được những thông tin của người dùng vào trong thẻ nhớ 4.2.9.2. Phương hướng phát triển Tìm ra giải pháp mới cho việc đọc thông tin từ thẻ nhớ. Đảm bảo sự bảo mật tối ưu cho hệ thống Xây dựng chương trình đưa thêm thông tin cá nhân của người dùng vào từng thẻ nhớ, và quản lý được lượng thông tin đó. Tìm ra phương thức giao tiếp tốt hơn để đảm bảo an toàn trong quá trình truyền dữ liệu giữa Client và Server. KẾT LUẬN Hệ thống thông tin quản lý nguồn nhân lực khoa học kỹ thuật là một hệ thống lớn có thể dùng cho các trường đại học, cao đẳng hay các viện nghiên cứu. Hệ thống giúp cho việc quản lý nhân sự trở nên chính xác, nhanh chóng, tiện lợi, hiệu quả và đặc biệt là trở nên dễ dàng hơn rất nhiều so với những hệ thống quản ‎lý cũ. Lợi ích cơ bản mà hệ thống đem lại là tạo ra sự dễ dàng trong việc nhập thông tin hồ sơ của cán bộ. Từ đó có thể quản lý một lượng lớn thông tin của đội ngũ cán bộ nhân viên. Trong thời gian chuẩn bị và làm khóa luận tốt nghiệp, nhóm chúng em đã phân tích thiết kế và xây dựng được hệ thống thông tin quản lý nhân sự khoa học kỹ thuật cho các trường đại học tại Hà Nội. Tuy nhiên, luận văn không thể tránh khỏi hạn chế và các thiếu sót, nhóm chúng em rất mong có được sự đóng góp của thầy cô và bạn bè để có thể tiếp tục phát triển hệ thống một cách hoàn thiện và tối ưu hơn. Hệ thống đã thể hiện được rõ ràng sự khác biệt đối với các hệ thống cũ. Người dùng đã có thể sử dụng chức năng tự cập nhật hồ sơ thông tin cá nhân. Người quản lý đã có thể sử dụng chức năng xác nhận thông tin cho nhân viên. Bản khóa luận này, tuy chưa hoàn thiện và đầy đủ cho việc xây dựng hoàn chỉnh thống nhất bài toán “Quản lý nguồn nhân lực khoa học”, tuy nhiên nó có thể đóng góp, giúp ích được phần nào những ai quan tâm đến việc xây dựng bài toán quản lý nhân sự khoa học kỹ thuật nói riêng và quản lý nhân sự nói chung. Có thể nói, “Hệ thống quản lý nguồn nhân lực khoa học kỹ thuật” đã thực sự mở ra một hướng mới trong việc quản lý nhân sự. TÀI LIỆU THAM KHẢO 1.Phạm Hữu Khang, Xây dựng ứng dụng Web bằng PHP & MYSQL, NXB Mũi Cà Mau 2.Nguyễn Văn Vị Giáo trình phân tích và thiết kế hệ thống thông tin, NXB Thống Kê 3. Optimaizing SQL, Peter Gulutzan and Trudy Pelzer; R&D Publications, Inc. Lawrence, Kansas 66046

Các file đính kèm theo tài liệu này:

  • docHệ thống quản lý nguồn nhân lực khoa học kỹ thuật.doc
Luận văn liên quan