Như chúng ta được biết, xu hướng phát triển của xã hội luôn luôn gắn liền với sự phát triển của khoa học công nghệ. Đặc biệt đối với ngành Giáo dục Đào tạo, công nghệ chắc chắn sẽ không thể thiếu trong thời kỳ hiện nay và trong tương lai. Giờ đây, với những bài giảng điện tử, lớp học ảo, lớp học sử dụng trên nền công nghệ thông tin không còn là điều xa lạ đối với giáo viên chúng ta nữa. Có thể nói, công nghệ thông tin đã thổi một luồng gió mới vào xu thế đổi mới quá trình Dạy Học. Từ bấy lâu nay, công nghệ thông tin đã giúp cho giáo viên vận dụng được những phương pháp dạy học một cách linh hoạt và đơn giản, công nghệ thông tin đã giúp giáo viên thực hiện được những bài giảng phức tạp mà giáo dục truyền thống khó có thể làm được, nếu có được thì phải rất vất vả và tốn kém, và còn nhiều điều mà công nghệ thông tin đã giúp cho giáo viên từ việc chuẩn bị đồ dùng dạy học, đồ dùng thí nghiệm, minh hoạ trực quan đến việc truyền đạt kiến thức tới học sinh thực sự dễ dàng và hiệu quả. Xét trên một phương diện nào đó thì nhờ vào công nghệ thông tin, đã góp phần vào việc tạo hứng thú học tập cho học sinh, giúp học sinh hình thành khái niệm và kiến thức một cách dễ dàng, nhanh chóng và hiệu quả.
Trang 1
BÁO CÁOTHỰC TẬP NHẬN THỨC
Trang 2Đà Nẵng, 06 – 2013LỜI CẢM ƠN
Chúng em xin gởi lời cảm ơn sâu sắc đến thầy Nguyễn Văn Nguyên, giảng viên trường Đại Học Bách Khoa, đã trực tiếp hướng dẫn, chỉ bảo tận tình cho em trong suốt quá trình thực hiện đề tài.
Tuy đã có nhiều cố gắng trong quá trình thưc hiện, nhưng sẽ không tránh khỏi những thiếu sót Em mong nhận đựơc sự đóng góp ý kiến của thầy.
Sinh viên thực hiện
Lê Long Bảo
Trang 3MỤC LỤC
Trang 4DANH MỤC HÌNH ẢNH
LỜI MỞ ĐẦU
Như chúng ta được biết, xu hướng phát triển của xã hội luôn luôn gắn liền với
sự phát triển của khoa học công nghệ Đặc biệt đối với ngành Giáo dục - Đào tạo, côngnghệ chắc chắn sẽ không thể thiếu trong thời kỳ hiện nay và trong tương lai Giờ đây,với những bài giảng điện tử, lớp học ảo, lớp học sử dụng trên nền công nghệ thông tinkhông còn là điều xa lạ đối với giáo viên chúng ta nữa Có thể nói, công nghệ thông tin
đã thổi một luồng gió mới vào xu thế đổi mới quá trình Dạy - Học Từ bấy lâu nay,công nghệ thông tin đã giúp cho giáo viên vận dụng được những phương pháp dạy họcmột cách linh hoạt và đơn giản, công nghệ thông tin đã giúp giáo viên thực hiện đượcnhững bài giảng phức tạp mà giáo dục truyền thống khó có thể làm được, nếu có đượcthì phải rất vất vả và tốn kém, và còn nhiều điều mà công nghệ thông tin đã giúp chogiáo viên từ việc chuẩn bị đồ dùng dạy học, đồ dùng thí nghiệm, minh hoạ trực quanđến việc truyền đạt kiến thức tới học sinh thực sự dễ dàng và hiệu quả Xét trên mộtphương diện nào đó thì nhờ vào công nghệ thông tin, đã góp phần vào việc tạo hứngthú học tập cho học sinh, giúp học sinh hình thành khái niệm và kiến thức một cách dễdàng, nhanh chóng và hiệu quả
Với lý do trên, em chọn đề tài “Xây dựng website thi toán qua mạng ở cấp trunghọc phổ thông” Em thấy đề tài mang tính thực tế cao, giúp tin học hóa cũng như giúphọc sinh nắm bắt kiến thức tốt hơn Đồ án bao gồm những nội dung chính sau:
Chương 1: Giới thiệu về công ty FPT Software
Chương 2: Nghiên cứu tổng quan
Trang 5Chương 3: Xây dựng chức năng.
Chương 3: Xây dựng chương trình thực nghiệm
Trang 6CHƯƠNG 1
GIỚI THIỆU VỀ CÔNG TY FPT SOFTWARE
I Giới thiệu về công ty
Được thành lập năm 1988 bởi một nhóm các nhà khoa học trẻ trong các lĩnh vựcVật lý, Toán, Cơ, Tin học ít nhiều đã làm quen với lập trình, chỉ sau một năm, FPT đãthành lập một bộ phận tin học mang tên ISC (Informatic Service Center) Một trongnhững dự án phần mềm đầu tiên mà ISC tham gia là dự án Typo4 xuất khẩu sang Pháp
do một Việt kiều ở Pháp về chủ trì Tiếp theo là hàng loạt giải pháp phần mềm cho cácmảng ngân hàng, kế toán, phòng vé máy bay song song với phân phối thiết bị và dự ánphần cứng Đến tháng 12 năm 1994, khi đã đủ lớn, ISC được tách thành các bộ phậnchuyên sâu về dự án, phân phối, phần mềm… Bộ phận phần mềm lúc đó có tên là FSS(FPT Software Solutions - tên tiếng Việt là Xí nghiệp Giải pháp Phần mềm FPT)
Từ 1994 đến 1998, FSS tiếp tục phát triển và cung cấp các giải pháp phần mềmcho các lĩnh vực Ngân hàng, Kế toán, Thuế, Hải quan, Công an.Một trong nhữngthành tích nổi bật của FSS là xây dựng TTVN - mạng WAN đầu tiên tại Việt nam, tạotiền đề phát triển cho Công ty Viễn thông FPT sau này (FPT Telecom) Trong nhữngnăm này, FPT liên tiếp được PC World Việt nam bình chọn là Công ty Tin học sốmột
Cuối năm 1998 đầu 1999, sau khi chiến lược xuất khẩu phần mềm được địnhhình, một nhóm chuyên gia được tách ra từ FSS để thành lập FSU1 (FPT StrategicUnit #1) như bộ phận chịu trách nhiệm mũi nhọn trong sứ mệnh Toàn Cầu Hoá.FSU1 chính là tiền thân của FSOFT ngày nay Trong năm 1999, FSOFT đã thực hiệnthành công dự án đầu tiên với khách hàng Winsoft, Canada, bước đầu xác định cơ cấu
tổ chức, lên các chương trình chuẩn bị nhân lực cho xuất khẩu Năm 2000, FSOFTchuyển trụ sở sang toà nhà HITC Ảnh hưởng bởi vụ dotcom, thị trường xuất khẩuphần mềm gặp nhiều khó khăn Tuy vậy, FSOFT đã vượt qua được thử thách và đạt
Trang 7được kết quả quan trọng - ký hợp đồng OSDC (Offshore Software DevelopmentCenter) đầu tiên với Harvey Nash Đến nay, Harvey Nash vẫn là một trong nhữngkhách hàng lớn nhất của FSOFT.
Năm 2001 được đánh dấu bằng các hợp đồng OSDC với Mỹ và đặc biệt làOSDC với NTT-IT - khách hàng Nhật bản đầu tiên của FSOFT Năm 2001 cũng lànăm FSOFT bắt đầu dự án CMM-4, với mục tiêu đạt chứng chỉ CMM mức 4 trongvòng một năm
FSOFT đạt CMM mức 4 vào tháng 3/2002, trở thành công ty đầu tiên ở khu vựcĐông Nam Á đạt chứng chỉ này Năm 2002 cũng là năm FSOFT củng cố lại sơ đồ tổchức, bằng việc thành lập các Trung tâm sản xuất và các Phòng chức năng Cuối
2002, lần đầu tiên doanh số FSOFT vượt ngưỡng 1 triệu USD Năm 2003 đem về choFSOFT nhiều khách hàng mới, đặc biệt là các khách hàng lớn của Nhật như Hitachi,Sanyo, Nissen, IBM Japan FSOFT thành lập Văn phòng tại thành phố Hồ Chí Minh
Để chuẩn bị cho thị trường Nhật, một chương trình lớn được triển khai bao gồm thànhlập Trung tâm Đông Du đào tạo tiếng Nhật CNTT, tuyển sinh viên các Khoa tiếngNhật và hỗ trợ học bổng cho họ học Aptech, tuyển sinh viên tốt nghiệp các trườngCNTT và đào tạo tập trung tiếng Nhật 6 tháng Năm 2003 cũng là năm dự án CMM-5khởi động Đầu năm 2004, FSOFT trở thành Công ty cổ phần phần mềm FPT Trụ sởtại Tp Hồ Chí Minh được chuyển về toà nhà e-town FSOFT đạt CMM mức 5 (mứccao nhất) vào tháng 3 Để phục vụ tốt hơn các khách hàng Nhật, Văn phòng đại diệncủa FSOFT được mở tại Tokyo Năm 2004 cũng là năm gặt hái nhiều thành công củaCông ty Phần mềm FPT, với doanh số xuất khẩu năm 2004 tăng trưởng hơn 200% sovới năm 2003
Năm 2005 là năm đánh dấu bước phát triển của công ty về mọi mặt, giúp FSOFTkhẳng định vị trí công ty phần mềm hàng đầu Việt Nam Tháng 8/2005 thành lập Chinhánh Đà Nẵng, tháng 11 thành lập Công ty FSOFT JAPAN tại Tokyo, tháng 12 khaitrương Trung tâm Tuyển dụng và Đào tạo tại toà nhà Simco, Hà nội Hết năm 2005,FSOFT tăng trưởng 114% doanh số, trở thành công ty phần mềm đầu tiên của ViệtNam có 1000 nhân viên
Trang 8Tháng 10, năm 2007, FSOFT chuyển Trung tâm đảm bảo nguồn lực (RAC) vềtòa nhà FPT Software tại Ngõ Tuổi trẻ- Hoàng Quốc Việt, đánh dấu sự trưởng thànhtrong công tác Tuyển dụng và đào tạo ban cho nguồn nhân lực của toàn Fsoft Hà Nội.Các Trung tâm sản xuất phần mềm được chuyển đến làm việc tập trung tại Tòa nhàFPT Building tại Phạm Hùng Cuối năm 2007, doanh số của Fsoft đạt 29,6 triệu USD,tăng 79% so với doanh thu năm 2006; số nhân viên chính thức là 2,287 người
FSOFT có hệ thống khách hàng rộng lớn trên toàn thế giới ở Mỹ, Châu Âu, NhậtBản, và các nước Châu Á Thái Bình Dương (Malaysia, Singapore, Thailand,Australia) Trong chiến lược gia nhập hàng ngũ những nhà cung cấp dịch vụ phầnmềm hàng đầu thế giới, Công ty tập trung phát triển nguồn nhân lực chất lượng cao –giá trị cốt lõi đóng góp vào tăng trưởng của công ty Với 80% nhân viên FSOFTthuần thục về tiếng Anh và hơn 200 người sử dụng tiếng Nhật, FPT Sofware khôngngừng tìm kiếm và tạo cơ hội cho những tài năng trẻ Mục tiêu trong năm 2008, Fsoft
sẽ đạt doanh thu 48,5 triệu USD, lợi nhuận ước tính sẽ đạt 14,7 triệu USD với số nhânviên sẽ là 3400 người
Hình 1.1 Tòa nhà FPT Software Đà Nẵng
Trang 9CHƯƠNG 2
NGHIÊN CỨU TỔNG QUAN
II Giới thiệu
II.1 Giới thiệu đề tài
Xuất phát từ ý tưởng “Học sinh thi toán trực tuyến trên mạng Internet, có nhiềukiểu thi hấp dẫn để tạo niềm say mê cho học sinh rèn luyện môn toán, đánh giá kết quả
tự động qua hai chỉ số: điểm và thời gian thi và hơn hết đáp ứng chủ đề năm học ứngdụng CNTT vào đổi mới phương pháp dạy - học, tổ chức sân chơi trực tuyến
II.2 Giới thiệu về ngôn ngữ lập trình PHP và hệ quản trị CSDL MySQL
II.2.1.Giới thiệu về ngôn ngữ PHP
II.2.1.1 PHP là gì
Cái tên PHP ban đầu được viết tắt bởi cụm từ Personal Home Page và được pháttriển từ năm 1994 bởi Rasmus Lerdorf Lúc đầu chỉ là bộ đặc tả Perl, được sử dụng đểlưu dấu vết người dùng trên các web Sau đó Rasmus Lerdorf đã phát triển PHP như làmột máy đặc tả (Scripting engine) Vào giữa năm 1997, PHP đã phát triển nhanh chóngtrong sự yêu thích của nhiều người PHP đã không còn là một dự án cá nhân củaRasmus Lerdorf và đã trở thành công nghệ web quan trọng Zeev Suraski và AndiGutmans đã hoàn thiện việc phân tích cú pháp cho ngôn ngữ để rồi tháng 6 năm 1998,PHP3 đã ra đời (phiên bản này có phần mở rộng là *.php3) Cho đến tận thời điểm đó,PHP chưa 1 lần được phát triển chính thức, một yêu cầu viết lại bộ đặc tả được đưa ra,ngay sau đó PHP4 ra đời (phiên bản này có phần mở rộng không phải là *.php4 mà là
*php) PHP4 nhanh hơn PHP3 rất nhiều PHP bây giờ được gọi là PHP HypertextPreProcesor Tính đến thời điểm hiện thời, phiên bản PHP ổn định mới nhất là 5.3.5.II.2.1.2 Tại sao sử dụng PHP
Trang 10Như chúng ta đã biết, rất nhiều website được xây dựng bởi ngôn ngữ HTML(Hypertext Markup Language) Đây chỉ là những website tĩnh, nghĩa là chứng chỉ chứađựng một nội dung cụ thể với những dòng văn bản đơn thuần, hình ảnh và có thể được
hỗ trợ bởi ngôn ngữ JavaScript hoặc Java Apple Tuy nhiên, website cần được cập nhậtnội dung một cách linh hoạt dễ dàng, vì vậy nó cần tới cơ sở dữ liệu Các website nhưvậy được gọi là website động Bởi nội dung của chúng luôn thay đổi tuỳ thuộc vào dữliệu và người sử dụng PHP là ngôn ngữ đáp ứng được những yêu cầu trên Bằng cáchchạy chương trình PHP trên máy chủ Web Sever, chúng ta có thể tạo ra ứng dụng có sựtương tác với cơ sở dữ liệu
Chúng ta hãy xem xét cách hoạt động của những trang web được viết bằng ngônngữ HTML và PHP như thế nào:
Với các trang HTML
Khi có yêu cầu tới mọi trang web từ phía người sử dụng (browser) Web serverthực hiện ba bước sau:
Đọc yêu cầu từ phía browser
Tìm trang web trên server
Gởi trang web đó trở lại cho browser nếu tìm thấy
Khác với các trang HTML, khi một trang PHP được yêu cầu, web server phântích và thi hành các đoạn mã PHP để tạo ra trang HTML Điều này được thực hiệnbằng bốn bước sau:
Trang 11Đọc yêu cầu từ phía browser.
Tìm trang web trên server
Thực hiện các đoạn mã PHP trên trang web đó để sửa đổi nội dung của trang.Gửi nội dung cho browser ở dạng HTML
Hình 2.2 Hoạt động của website viết bằng PHPTóm lại, sự khác nhau giữa HTML và PHP là HTML không được thực hiện xử lýtrên máy chủ Web server còn các trang viết bằng mã PHP được thực hiện và xử lý trênmáy chủ Web server, do đó PHP linh động và mềm dẻo hơn
II.2.1.3 Những điểm mạnh của PHP
PHP thực hiện với tốc độ rất nhanh và hiệu quả Một Server bình thường có thểđáp ứng được hơn hàng chục triệu truy cập trong một ngày
PHP hỗ trợ kết nối tới rất nhiều CSDL khác nhau như PostgreSQL, MicrosoftSQL Server, Oracle, dbm, filePro Ngoài ra còn hỗ trợ kết nối tới ODBC thông qua đó
có thể kết nối với nhiều ngôn ngữ khác mà ODBC hỗ trợ
PHP cung cấp một hệ thống thư viện phong phú và ngày càng phát triển DoPHP ngay từ đầu được thiết kế nhằm mục đích xây dựng và phát triển các ứng dụngtrên web nên PHP cung cấp rất nhiều hàm xây dựng sẵn giúp thực hiện các công việcrất dễ dàng: gửi, nhận mail, làm việc với cookie…
PHP là một ngôn ngữ rất dễ dùng, dễ học và đơn giản hơn nhiều so với cácngôn ngữ khác như Perl, Java
Trang 12Đặc biệt, PHP là ngôn ngữ mã nguồn mở Có rất nhiều phần mềm website mãnguồn mở được viết trên nền tảng của PHP như Joomla, Drupal, Nukeviet
II.2.2.Giới thiệu về hệ quản trị CSDL MySQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và đượccác nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng Vì MySQL là cơ
sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều
hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.Với tốc độ và tínhbảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập cơ sở dữ liệu trêninternet MySQL miễn phí hoàn toàn, có rất nhiều phiên bản cho các hệ điều hành khácnhau: Phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix,FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, …
Sự kết hợp tuyệt vời giữa PHP và MySQL đã cho ra đời phần mềm mã nguồn mởJoomla
Các đặc điểm của MySQL:
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan
hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL)
MySQL là một phần mềm quản trị CSDL mã nguồn mở, miễn phí nằm trongnhóm LAMP (Linux - Apache -MySQL - PHP)
MySQL là một hệ quản trị nhỏ, bảo mật và rất dễ sử dụng Thường sử dụng chocác ứng dụng nhỏ và trung bình Nó được sử dụng cho các ứng dụng client-server vớimáy chủ mạnh như UNIX, Windows, và đặc biệt là máy chủ UNIX
MySQL hỗ trợ các điểm vào là ANSI 92 và ODBC mức 0-2 SQL chuẩn
MySQL hỗ trợ nhiều ngôn ngữ cho việc thông báo lỗi như: Czec, Dutc, English,Estonia, Polish, Porugue, Spanish and Swedish Ngôn nữ được hỗ trợ mặc định cho dữliệu là ISO-8859-1(Latin1)
Ngôn ngữ lập trình được sử dụng để viết các hàm API để nhập cơ sở dữ liệuMySQL có thể là C, Perl, PHP
Cơ sở dữ liệu MySQL rất dễ quản lý và có tốc độ xử lý cao hơn tớ ba bốn lần sovới các hệ quản trị cơ sở dữ liệu khác
Trang 13MySQL không cho phép thực hiện các câu lệnh SQL select truy vấn con.
MySQL không hỗ trợ Stored Procedures, Triggers, Transactions, Foreign Keys
và Views như các hệ quản trị cơ sở dữ liệu khác
II.3 Hệ quản trị nội dung Joomla
II.3.1.Giới thiệu về hệ quản trị nội dung
Hệ quản trị nội dung hay còn gọi là hệ thống quản lý nội dung (CMS - ContentManagement System) là phần mềm để tổ chức và tạo môi trường cộng tác thuận lợinhằm mục đích xây dựng một hệ thống tài liệu và các loại nội dung khác một cáchthống nhất Mới đây, thuật ngữ này liên kết với chương trình quản lý nội dung của
Các đặc điểm cơ bản của CMS bao gồm:
Phê chuẩn việc tạo hoặc thay đổi nội dung trực tuyến
Chế độ Soạn thảo WYSIWYG tiện lợi
Quản lý người dùng
Tìm kiếm và lập chỉ mục
Lưu trữ
Tuỳ biến giao diện
Quản lý ảnh và các liên kết (URL)
Với sự phát triển nhanh chóng hiện nay của internet, nếu chúng ta có một website
mà không có chức năng thay đổi, cập nhật nội dung mới, chúng ta sẽ trở nên tụt hậu vàgặp khó khăn trong việc cập nhật nội dung cũng như quảng bá hình ảnh công ty, tổchức Ý tưởng cho một website với hệ thống quản trị nội dung (Content ManagementSystems – CMS) được ra đời nhằm đáp ứng nhu cầu trên Và đặc biệt là sự xuất hiệncủa mã nguồn mở Joomla CMS Chúng ta có thể thấy được sức mạnh của hệ quản trịnội dung trong loại mã nguồn mở này
II.3.2.Giới thiệu sơ lược về Joomla
Trang 14Joomla! là một nền tảng mã nguồn mở được viết bằng ngôn ngữ PHP và sử dụng
cơ sở dữ liệu MySQL, cho phép người dùng có thể dễ dàng soạn thảo và xuất bản cácnội dung (bài viết, tài liệu ) của họ lên Internet hoặc Intranet
Joomla! giúp xây dựng và triển khai các website blog, website tin tức, websitebán hàng, website thương mại điện tử cho tới mạng cộng đồng, mạng xã hội trongmột thời gian ngắn và tiết kiệm nhiều công sức
Joomla! được phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm hiệplực" Khẩu ngữ này khẳng định sự đoàn kết và quyết tâm của cộng đồng Joomla!
II.3.3.Thành phần mở rộng của Joomla
Thành phần mở rộng (extensions) là gói cài đặt thêm để mở rộng chức năng ngoàicác chức năng cốt lõi của Joomla Trong Joomla, có năm loại thành phần mở rộng.II.3.3.1 Component
Joomla Component là một trong các loại thành phần mở rộng quan trọng nhất củaJoomla và thực chất nó là một ứng dụng trong hệ thống Joomla Component được sửdụng để thực hiện một chức năng lớn nào đó, chẳng hạn như: Cung cấp tin tức, quảngcáo, rao vặt, đặt phòng khách sạn, bất động sản, download
Một component được hiển thị ở phần trung tâm, hay phần chính (mainbody) củaWebsite
Hình 2.3 Component Joomla
Trang 15 Các Component mặc định của Joomla
Trong phiên bản Joomla 1.5 có tất cả 11 component mặc định được cung cấp kèmtheo Các component này được đặt trong thư mục [Joomla]/components và nằm trongcác thư mục con tương ứng với ký hiệu là "com_tên component"
Hình 2.4 Danh sách các component mặc định của Joomla 1.5
Danh sách các component và ý nghĩa của chúng:
+ com_banners: Quản lý bảng quảng cáo (banner)
+ com_contact: Quản lý các đầu mối liên hệ (contact)
+ com_content: Quản lý và hiển thị bài viết (đây là component quan trọng nhất)+ com_mailto: Quản lý chức năng gửi/nhận email
+ com_media: Quản lý các tệp đa phương tiện (video, flash, mp3, hình)
+ com_newsfeeds: Quản lý việc lấy tin từ website khác
+ com_poll: Cung cấp chức năng bình chọn
+ com_search: Cung cấp chức năng tìm kiếm
+ com_user: Quản lý thành viên
+ com_weblinks: Quản lý và hiển thị danh mục các website liên kết
II.3.3.2 Module
Joomla Module là một trong các thành phần mở rộng của Joomla, nó là mộtứng dụng nhỏ (thường chỉ có vài file và phần lập trình cũng không nhiều) được sửdụng chủ yếu để lấy dữ liệu và hiển thị thông tin Module thường được dùng kết hợpkèm với các component nhằm mở rộng, cũng như thể hiện rõ ràng hơn các chức năngcủa component