1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm

76 5,1K 24

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 76
Dung lượng 5,07 MB

Nội dung

Cùng với việc ứng dụng rộng rãi của công nghệ thông tin trong các ngành kinh tế, xã hội thì nó cũng đang trở thành một công cụ đắc lực hỗ trợ cho công tác quản lý của các đơn vị trong mọ

Trang 1

LỜI NÓI ĐẦU

Sự phát triển của công nghệ thông tin đã đem lại những bước tiến nhảy vọt trong nhiều ngành kinh tế cũng như mọi mặt của đời sống xã hội Ở nước ta,

Trang 2

công nghệ thông tin đang có những bước phát triển đáng kể từng bước khẳng định vị trí của mình là một ngành kinh tế công nghệ mũi nhọn Cùng với việc ứng dụng rộng rãi của công nghệ thông tin trong các ngành kinh tế, xã hội thì nó cũng đang trở thành một công cụ đắc lực hỗ trợ cho công tác quản lý của các đơn vị trong mọi cấp, mọi ngành.

Hệ thống thông tin, cũng như các hệ thống khác, có một chu trình sống, từ khi được hình thành, trải qua giai đoạn khai thác và sử dụng, cho đến khi được thay thế bằng một hệ thống thông tin khác, mạnh hơn và đầy đủ hơn Quá trình xây dựng là một trong các giai đoạn của vòng đời hệ thống thông tin Quá trình này gồm nhiều bước: nghiên cứu hiện trạng, phân tích thiết kế, cài đặt và thử nghiệm

Đối với website thông tin tuyển dụng giới thiệu việc làm, nhắm giúp phần nào cho người có nhu cầu tiết kiệm được thời gian và công sức mà có thể tìm kiếm được mong muốn tuyển dụng cũng như công việc

CHƯƠNG I : CƠ SỞ LÝ THUYẾT

I. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MY SQL

MySQL :

Trang 3

MySQL là hệ quản trị cơ sở dữ liệumã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ Nó

có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X,

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 được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl, Tại sao lại sử dụng MySQL:

MySQL từ lâu đã là hệ CSDL được dùng phổ biến nhất với PHP vì tính gọn nhẹ, nhanh, miễn phí và được PHP hỗ trợ sẵn Ổn định, bảo mật, truy xuất cơ sở

dữ liệu nhanh, dễ cài đặt, dễ sử dụng, phù hợp với những phần mềm cơ sở dữ liệu nhỏ, các website thông thường Hiện nay trong số các Website có lưu lượng truy cập lớn thuộc hàng nhất trên Internet, có rất nhiều Website sử dụng liên minh LAMP này "Liên minh" mã mở LAMP đang được coi là một đối trọng với các sản phẩm mã đóng của Microsoft (Windows, IIS, SQL Server, ASP/ASP.NET)

Một số đặc điểm của MySQL

MySQL là một phần mềm quản trị CSDL 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 CSDL, mỗi CSDL 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 CSDL 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 CSDL Khi ta truy vấn tới CSDL MySQL, ta phải cung cấp tên truy cập và mật khẩu của tài khỏan có quyền sử dụng CSDL đó

- Kết nối vào cơ sở dữ liệu

PHP cung cấp hàm mysql_connect để kết nối vèo MySQL server Cú pháp của hàm này như sau: mysql_connect($server_address, $username, $password)

Trang 4

$server_address là địa chỉ của MySQL server, có thể là domain name hoặc IP address, các ví dụ trong bài viết này sẽ dùng giá trị "localhost" cho

$server_address

$username là tên account dùng để login vào MySQL server, các ví dụ trong bài viết sẽ sử dụng giá trị "root" cho $username

$password là mật mã để kết nối vào MySQL server, các ví dụ trong bài viết sẽ

sử dụng "aaa" làm mật mã Hàm mysql_connect sẽ trả về 1 kết nối đến MySQL server nếu như quá trình kết nối thành công, hoặc trả về giá trị FALSE nếu như kết nối không được Để đóng kết nối tới MySQL server, PHP cung cấp hàm mysql_close

//Không kết nối được, thoát ra và báo lỗi

die("không nết nối được vào MySQL server");

} //end if

//đóng kết nối

mysql_close($conn);?>

Chọn cơ sở dữ liệu để làm việc

Sau khi connet vào MySQL server, thao tác tiếp theo là chọn CSDL để làm việc PHP cung cấp cho ta hàm mysql_select_db để làm việc này Cú pháp của hàm này như sau:

mysql_select_db($db_name[, $conn])

Trang 5

Với $db_name là tên CSDL cần chọn, $conn là kết nối được thực hiện qua lệnh mysql_connect

- Thực thi một câu lệnh select và lấy kết quả trả về

PHP cung cấp cho ta 3 hàm hữu dụng để thực hiện công việc này:

$result = mysql_query($sql, $conn): thực hiện câu lệnh SQL được cung cấp qua tham số $sql và trả về 1 kết quả kiểu $result (hàm này trả về FALSE nếu như câu lệnh thực hiện không thành công)

mysql_num_rows($result): hàm này trả về số lượng row lấy được qua câu lệnh SELECT (được thực thi bởi hàm mysql_query) trước đó

$row = mysql_fetch_row($result), $row = mysql_fetch_assoc($result): trả về dòng kết quả hiện thời của câu lệnh select và chuyển con trỏ tới dòng tiếp theo (như vậy lệnh gọi mysql_fetch_row hoặc mysql_fetch_assoc tiếp đó sẽ trả về dòng tiếp theo); hoặc giá trị FALSE nếu như không còn dòng nào để trả về nữa Kết quả trả về từ hai hàm này là một mảng

mysql_error($conn): trả về thông báo lỗi của MySQL server nếu như một lệnh trước đó có lỗi Để hiểu rõ hơn công dụng của các hàm trên, đồng thời phân biệt

sự khác nhau giữa 2 hàm mysql_fetch_row và mysql_fetch_assoc, ta cung xem xét các ví dụ sau Các ví dụ của ta sẽ sử dụng table có tên là mk_managers với các trường và dữ liệu như sau: useranem, password

Hàm mysql_fetch_row() sẽ trả về 1 array mà phần tử thứ [0] sẽ tương ứng với cột đầu tiên của table, phần tử thứ [1] sẽ tương ứng với cột thứ hai của table Chương trình trên sẽ in ra ra 4 dòng:

Trang 6

//Không kết nối được, thoát ra và báo lỗi

die("không nết nối được vào MySQL server: ".mysql_error($conn));

} //end if

//chọn CSDL để làm việc

mysql_select_db($DBNAME, $conn)

or die("Không thể chọn được CSDL: ".mysql_error($conn));

$sql = "SELECT * FROM `mk_managers`";

$result = mysql_query($sql, $conn);

if ( !$result )

die("Không thể thực hiện được câu lệnh SQL: ".mysql_error($conn));echo "Số lượng row tìm được: ".mysql_num_rows($result)."<br>\n";

while ( $row = mysql_fetch_assoc($result) ) {

echo "Username = ".$row['username']."<br>\n";

echo "Password = ".$row['password']."<br>\n";

} //end while

//nên luôn giải phóng bộ nhớ sau khi lấy hết các row trả về từ câu lệnh SELECT

mysql_free_result($result);

Trang 7

- Thực thi câu lệnh update, insert hoặc delete

Hàm mysql_query cũng được dùng để thực thi các câu lệnh DELETE, INSERT hoặc UPDATE, nhưng lúc này hàm sẽ trả về TRUE nếu câu lệnh thực hiện thành công và FALSE trong trường hợp ngược lại Để lấy số lượng các row được chèn với lệnh INSERT hoặc bị thay đổi bởi lệnh UPDATE, PHP cung cấp cho ta hàm mysql_affected_rows Ta hãy xem ví dụ sau:

//Không kết nối được, thoát ra và báo lỗi

die("không nết nối được vào MySQL server: ".mysql_error($conn));

Trang 8

} //end if

//chọn CSDL để làm việc

mysql_select_db($DBNAME, $conn)

or die("Không thể chọn được CSDL: ".mysql_error($conn));

$sql = "INSERT INTO `mk_managers` (username, password) VALUES ('xyz', '000')";

$result = mysql_query($sql, $conn); //chèn thêm 1 dòng vào table

if ( !$result )

die("Không thể thực hiện được câu lệnh SQL: ".mysql_error($conn));echo "Số lượng row được chèn: ".mysql_affected_rows($conn)."<br>\n";//ta chỉ chèn 1 dòng nên hàm mysql_affected_rows sẽ trả về 1

$sql = "UPDATE `mk_managers` SET password='111' WHERE username='xyz'";

$result = mysql_query($sql, $conn); //đổi password của accoutn xyz

if ( !$result )

die("Không thể thực hiện được câu lệnh SQL: ".mysql_error($conn));echo "Số lượng row được thay đổi: ".mysql_affected_rows($conn)."<br>\n";//ta thay đổi 1 dòng nên hàm mysql_affected_rows sẽ trả về 1

$sql = "DELETE FROM `mk_managers`";

$result = mysql_query($sql, $conn); //xoá hết tất cả các account

Trang 9

//đóng kết nối

mysql_close($conn);?>

II. NGÔN NGỮ LẬP TRÌNH PHP

PHP ( Hypertext Preprocessor ) là một ngôn ngữ lập trình để phát triển các ứng

dụng viết cho máy chủ, mã nguồn mở hay dùng cho mục đích tổng quát

Như chúng ta đã biết, có rất nhiều trang web được xây dựng bởi ngôn ngữ HTML Đây chỉ là nhưng trang web 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 đơin thuần, hình ảnh, và có thể được sự hỗ trợ bởi ngôn ngữ JavaScript hoặc Java Apple Nhưng trang web như vậy người

ta thường gọi là client – side Tuy nhiên, Internet và Intranets đã được sử dụng cho các ứng dụng cần tới cơ sở dữ liệu Các trang ứng dụng như vậy được gọi là trang web động, bởi vì nội dung của chúng luôn được thay đổi tùy thuộc vào dữ liệu và người sử dụng PHP là ngôn ngữ làm được những điều như vậy Bằng cách chạy chương trình PHP trên máy chủ Web sever, có thể tạo ra những ứng dụng có sự tương tác với cơ sở dữ liệu để tạo ra những trang web và đây được gọi là trang web động

Cách hoạt động của PHP : một trang PHP được yêu cầu, web sever phân tích

và thi hành các đoạn mã PHP để tạo ra trang HTML qua bốn bước:

- Đọc yêu cầu từ phía browser

- Tìm trang web trên sever

- Thực hiện các đoạn mã PHP trên trang web đó để sửa đổi nội dung của trang web

- Gửi trở lại nội dung cho brower

Trang 10

- <% echo ("You may optionally use ASP-style tags"); %>

<%= $variable; # This is a shortcut for "<%echo " %>

Chú ý: Cách 1 chỉ có thể sử dụng nếu những tag ngắn được cho phép sử dụng

Có thể sửa short_open_tag trong cấu hình của php hoặc biên dịch file php với lựa chọn cho phép dùng các tag ngắn Tương tự như vậy, cách thứ 4 chỉ có tác dụng nếu asp_tag được đặt trong file cáu hình của PHP PHP cho phép hỗ trợ các kiểu chú thích của cả C, C++ và Unix shell

• Mảng:

Trang 11

Mảng là một dạng của biến trong đó có chứa nhiều giá trị Ví dụ một dạng đơn giản của mảng:

$thang = array("Gieng", "Hai", "Ba", "Bon", "Nam", "Sau", "Bay", "Tam",

"Chin", "Muoi", "Muoi Mot", "Muoi Hai");

Để truy xuất được tất cả các phần tử trong mảng, bạn có thể tính ra chiều dài của mảng và thực hiện vòng lặp:

for ($i=0; $i<count($months); $i++)

{ echo $thang[$i] "<br>\n" ; }

Mảng liên hợp:

Cũng giống như các ngôn ngữ khác, PHP tận dụng khả năng của mảng liên hợp (associative array) Có thể bạn cảm thấy mới mẻ với khái niệm này Mỗi phần tử trong mảng liên hợp mang khoá riêng Các phần tử của mảng sẽ được truy cập thông qua khoá Điều này giống như cách thức truy xuất trong các query khi làm việc với Database Trong ví dụ sau, bạn sẽ thấy các phần tử first_name, last_name, e-mail sử dụng các key:

- Tất cả các mảng trong PHP đều là mảng liên hợp

PHP cũng sẽ tự động gán cho chúng các key Ví dụ: $x= array ("pug",

"poodle"), PHP sẽ tự gán cho $x các khoá là các con số nguyên theo thứ tự bắt đầu từ số 0

Mảng đa chiều:

Trang 12

Mảng đa chiều thường sử dụng nhất đó là mảng hai chiều Chúng chứa thông tin dựa trên hai khoá Chúng ta sẽ xác lập một mảng $people Trong mảng

$people lại chứa mảng cho từng cá nhân:

$people = array (

"khai" => array ("ho_lot" => "tongphuoc", "tuoi" => 30),

"minh" => array ("ho_lot" => "leanh" , "tuoi" => 52) );

Có thể truy cập tất cả các phần tử trong mảng hai chiều bằng cách sử dụng vòng lặp trên cả hai chiều của mảng:

while(list($person, $person_array) = each($people))

{

echo "<b>Ban biet gi ve $person</b><br>\n";

while(list($person_attribute, $value) = each($person_array))

{

echo "$person_attribute = $value<br>\n";

}}

• Cookies

Cookie là những file nhỏ chứa một số các thông tin truy cập Web Các cookie

do Websever phát sinh, lưu giữ lại, sau đó sẽ được đọc ở những lần truy cập về sau Cookie đơn thuần chỉ là thông tin ghi nhận lại những động tác truy cập web của khách Khi tồn tại trên đĩa cứng, cookie trở thành các thỉnh cầu của giao thức HTTP, được gởi đến Webserver Để có thể phát sinh một cookie cần phải sử dụng hàm setcookie() như sau:

setcookie(name, value, time_to_expire, path, domain, security, setting);

setcookie("my_cookie", "my_id",time()+(60*60*24*30),"/",".mydomain.com", 0)

Lệnh trên sẽ phát sinh một cookie với các chức năng sau:

Trang 13

− Chứa một biến tên là my_cookie

− Giá trị của mycookie my_id

Cookie tồn tại trong vòng 30 ngày kể từ ngày nó phát sinh (time()+(30*24*60*60) ngày giờ hiện tại + 30 ngày được quy ra giây)

Cookie có tác dụng đến tất cả các trang trong domain Bạn có thể hạn chế lại bằng các chỉ ra đường dẫn đến một số trang nào đó trong domain

Nó sẽ hiện diện trong tất cả các website có địa chỉ http://mydomain.com

Không có xác lập đặc biệt nào về bảo mật

Một khi cookie được xác lập, các biến phát sinh từ cookie có tác dụng giống như biến phát sinh từ form mà chúng ta đã bàn trước đây Chúng sẽ hiện diện với chức năng là biến global Sau khi script PHP xác lập cookie, các script khác trong domain có thể truy cập cookie một cách tự động Cẩn thận hơn để

$mycookie không xung đột với một biến nào khác cũng có tên $mycookie, bạn

có thể truy xuất nó thông qua mảng HTTP_COOKIE_VARS và sử dụng lệnh: HTTP_COOKIE_VARS["mycookie"] Bạn có thể xác lập cookie cung cấp khả năng truy xuất như là một mảng:

setcookie("mycookie[first]","dddd",time()+2592000,"/","192.168.1.1", 0);setcookie("mycookie[second]","my_second_id",time()

ID này được gởi đến user thông qua một cookie PHP sau đó tạo một tập tin trên server để theo dõi sự thay đổi của biến Tập tin này có tên giống như tên của SessionID Một khi session được tạo, bạn có thể đăng ký bất kỳ số lượng biến Các giá trị của những biến này được lưu giữ trong tập tin trên server Cũng như

sự tồn tại của cookie, các biến trong session sẽ hiện diện trên bất kỳ trang nào được truy cập đến trong phạm vi một domain Việc xác lập này rất thuận tiện

Trang 14

hơn là chuyển tiếp các biến từ trang này sang trang khác thông qua các phần tử

ẩn trong form hay cookie

Ví dụ: <? session_start();

session_register("my_var");

$my_var = "hello world";?>

Sau khi chạy chương trình này, chọn refresh trên trình duyệt Bạn sẽ thấy script sẽ nhớ được rằng bạn là ai Các hàm setcookie() và session_start() nên ở

vị trí gần đầu tập tin Nếu bạn thử chuyển đến trình duyệt trước để xác lập một cookie bạn sẽ nhận được một thông báo lỗi

• Biến

Gán từ trình duyệt (web browser)

Thông thường các thông tin này được nhập vào thông qua một form HTML Nhưng cũng có thể chúng xuất phát từ các nguồn khác như: HTML, cookie, session

Biến từ Form của HTML

<form action=mypage.php action=post>

<input type=”text” name=”email”>

<input type=”text” name=”first_name”>

<input type=”submit” name=”submit” value=”OK”>

<input type=” reset” name=”reset” value=”Cancel”>

</form>

Sau khi submit dữ liệu lên sever thì các giá trị lấy lên từ form là first_name, email được gọi là biến từ form Các biến cũng có thể được truy xuất thông qua mảng $HTTP_POST_VARS hoặc $HTTP_GET_VARS, dựa vào method sử dụng trong form Có thể truy cập bất kỳ phần tử riêng biệt nào như đã làm trong mảng liên hợp

Trang 15

($HTTP_POST_VARS["e-mail"]) Hoặc có thể tạo vòng lặp duyệt qua tất cả các phần tử của mảng:

while (list($key, $value) = each($HTTP_POST_VARS))

{ echo "variable = $key value = $value <br>"; }

HTTP_POST_VARS: viết tắt là $_POST

Đây là một mảng chứa tất cả các biến được chuyển tiếp thông qua POST method từ một form

HTTP_GET_VARS: viết tắt là $_GET

Đây là một mảng chứa tất cả các biến được chuyển tiếp thông qua GET method

HTTP_COOKIE_VARS

Tất cả các cookie chuyển đến trình duyệt đều có thể được truy xuất trong mảng liên hợp này Nó bao gồm cả session cookie

Biến của Apache

Apache có sẵn rất nhiều biến Sau đây là một số biến mà có lẽ thường sẽ sử dụng thường xuyên trong chương trình

DOCUMENT_ROOT

Biến này trả về đường dẫn của Webserver

HTTP_USER_AGENT

Trang 16

Biến user_agent cung cấp cho bạn khả năng uyển chuyển đối với từng trình duyệt khác nhau

REMOTE_ADDR

Dùng để lấy địa chỉ IP của user

REQUEST_URI

Biến này cũng giống như biến PHP_SELF Ngoài ra nó còn chứa thêm tham

số trong địa chỉ truy vấn Nếu bạn truy cập vào địa chỉ:

http://www.mydomain.com/info/products/index.php?id=6

Thì biến REQUEST_URI của bạn có giá trị là: info/products/index.php?id=6

SCRIPT_FILENAME

Biến này chứa toàn bộ đường dẫn của tập tin

Kiểm tra biến

isset( )

Hàm này thực hiện việc kiểm tra biến có chứa giá trị hay không Nó sẽ trả về giá trị TRUE hoặc FALSE Nếu biến chưa được xác lập thì trị isset() sẽ là false

empty()

Hàm empty() có vẻ ngược ngạo so với hàm isset() Nó sẽ cho ra trị True nếu

$var có trị null, chuỗi rỗng hoặc số 0 Hàm này thường được sử dụng để kiểm tra xem user có nhập trị vào trong form hay không

is_int( )

Hàm này để kiểm tra biến có phải là số nguyên hay không Có 2 cú pháp khác cho cùng kết quả như nó là: is_integer và is_long() Sử dụng hàm này khi không chắc rằng biến là một trị nguyên hay chuỗi

Tương tự có một loạt hàm kiểm tra kiểu của biến sau đây:

Trang 17

Đổi kiểu của biến.

Bạn sẽ sử dụng 3 cách để đổi kiểu của biến

Phương pháp type casting

Trang 18

Cách thức: settype($biến, "kiểu")

Biến của biến

Nghe qua có vẻ lạ lạ, nhưng đây là một "độc chiêu" của PHP Với cách thức này sẽ lấy giá trị của một biến để hình thành tên của một biến mới

Cách thức: $$biến

<?

$tacgia = array ("ho"=>"Tong", "ten"=>"Khai");

while (list($field,$value) = each($tacgia))

_FILE_ : tên của script file đang được thực hiện.

_LINE_ : số dòng của mã script đang được thực hiện trong script file hiện tại _PHP_VERSION_ : version của PHP

Trang 19

TRUE, FALSE

E_ERROR : báo hiệu có lỗi.

E_PARSE : báo lỗi sai khi biên dịch.

E_NOTICE : Một vài sự kiện có thể là lỗi hoặc không.

E_ALL : Có thể định nghĩa một hằng số bằng hàm define()

if (điều kiện) { do something; }

else if ( điều kiện ) { do something;} else { do something;}

Vòng lặp

while ( DK) { }

do { }

Trang 20

white ( DK );

for (bieuthuc1; bieuthuc2; bieu thuc3) { }

Với phiên bản PHP >4:

foreach(array_expression as $value) statement

foreach(array_expression as $key => $value) statement Break và continue

break : thoát ra khỏi vòng lặp hiện thời

continue : bỏ qua vòng lặp hiện tại, tiếp tục vòng tiếp theo Switch

switch (tên biến) {

case trường hợp 1: break;

case trường hợp 2: break;

case trường hợp 3: break;

Trang 21

{ $string = 'and something extra.'; }

Tham số có giá trị mặc định.:

function makecoffee ($type = "cappucino")

{return "Making a cup of $type.n"; }

Chú ý : khi sử dụng hàm có đối số có giá trị mặc định, các biến này sẽ phải nằm về phía phải nhất trong danh sách đối số

Giá trị trả lại của hàm:

Có thể là bất kỳ giá trị nào Tuy vây, không thể trả lại nhiều giá trị riêng lẻ nhưng có thể trả lại một mảng các giá trị

• Các toán tử:

PHP có các toán tử cho các phép số học : + - * / %

Các toán tử logic : and or xor ! && ||

Toán tử thao tác với bit : & | ^ ~ <<>>

Toán tử so sánh : ==, != ,< ,> ,<=, >=, ====

Trang 22

Toán tử điều khiển lỗi : @ - khi đứng trước một biểu thức thì các lỗi của biểu thức sẽ bị bỏ qua và lưu trong $php_errormsg

VD: <?php

class ManagersController extends AppController {

var $name = 'Managers';

var $helpers = array('Html', 'Form' , 'Ajax');

function check_block(){

$managers=$this->Manager->findAll('Manager.block=2');

$today=date('y-m-d h:m:s'); //echo date('d/m/Y',strtotime($day));

foreach ($managers as $manager):

if((date('d')-date('d',strtotime($manager['Manager'] ['dateblock'])))>=1)

{

$this->data['Manager']['block']=1;

$this->data['Manager']['id']= $manager['Manager']['id'] ; $this->Manager->save($this->data);

}

endforeach;

return true;

Trang 23

• Các cấu trúc điều khiển:

Cấu trúc nổi bật của PHP là foreach: endforeach;

foreach (array_expression as $value) statements;

foreach (array_expression as $key => $value) statements;

Giả sử ta có bảng cơ sở dữ liệu: `mk_managers` có các trường `id`,

`name`, `username`, `block`, `name`, `group`, `count` được nằm trong cơ sở dữ liệu có tên là `mmk_ marklearn `

Như đã giới thiệu ở trên (phần mysql) ta kết nối cơ sở dữ liệu ở file connect.inc

Trang 24

$sql="SELECT `id`, `username`, `block`, `name`,`group`,`count` FROM

`mk_managers` order by `mk_managers`.`username` ASC";

<td><a href="#" onClick="new Ajax.Updater">

<?php echo $row['username']; ?></a>

</td>

Trang 25

<a href="#" onClick="new Ajax.Updater "><img src="image/reset.jpg" alt

="reset" border="0" width="15"></a>

</td>

<td style="text-align:center;">

<a href="#"onClick="new Ajax.Updater"><img src="image/edit.png" alt

="reset" border="0" width="15"></a>

<?php $i++;

}

mysql_free_result($result) ;

Trang 26

} mysql_close($conn) ; ?>

Với ví dụ trên: hàm $result=mysql_query($sql,$conn); sẽ thực hiện việc truy vấn cơ sở dữ liệu Kết quả trả về là mảng $result

Với hàm mysql_num_rows($result) trả về số dòng kết quả thu được

Với $row=mysql_fetch_assoc($result) $row kết quả trả về tương ứng với mỗi dòng

Với mỗi dòng thu được ta thực hiện các thao tác với nó Như in ra màn hình

- PHP là ngôn ngữ rất dễ dùng, đơn giản hơn so với nhiều so với các ngôn ngữ khác như Java, Peri

PHP Framework

PHP frameworks làm cho sự phát triển của những ứng dụng web viết bằng ngôn ngữ PHP trở nên trôi chảy hơn, bằng cách cung cấp một cấu trúc cơ bản để xây dựng những ứng dụng đó Hay nói cách khác, PHP framework giúp đỡ các bạn thúc đẩy nhanh chóng quá trình phát triển ứng dụng, giúp bạn tiết kiệm được thời gian, tăng sự ổn định cho ứng dụng, và giảm thiểu số lần phải viết lại

mã cho lập trình viên Ngoài ra Framework còn giúp những người mới bắt đầu

Trang 27

có thể xây dựng các ứng dụng ổn định hơn nhờ việc tương tác chính xác giữa các Database, mã (PHP) và giao diện (HTML) một cách riêng biệt Điều này cho phép bạn dành nhiều thời gian để tạo ra các ứng dụng web, hơn là phí thời gian

để viết các đoạn mã lặp lại trong một project

Có rất nhiều lý do khác nhau để các lập trình viên sử dụng PHP framework, nhưng một trong những lý do chính vẫn là khả năng giúp các lập trình viền tăng tốc quá trình phát triển ứng dụng Việc sử dụng lại các mã lệnh giống nhau trong nhiều project sẽ giúp các bạn tiết kiệm được thời gian và công sức một cách đáng kể Một framework sẽ cung cấp sẵn các module nền tảng cần thiết để xây dựng một project, vì thế, các lập trình viên có thể tận dụng được thời gian để phát triển các ứng dụng thực tế, hơn là mất thời gian để xây dựng lại một nền tảng trên mỗi project

Sự ổn định là một lý do lớn đối với các lập trình viên đang sử dụng Framework Tính đơn giản là 1 điểm mạnh của PHP, đó là lý do tại sao lại

có nhiều người thích sử dụng nó, nhưng đồng thời đó cũng là điểm yếu của nó PHP thì khá dễ học và sử dụng, đặc biệt là đối với những người mới làm quen với lập trình, tuy nhiên, họ có thể thường xuyên viết mã một cách không khoa học và thậm chí không hề nhận thức được điều này, với PHP, trong nhiều trường hợp các ứng dụng vẫn sẽ làm việc được, nhưng vô tình họ có thể tạo ra các lỗ hổng bảo mật lớn trong mã lệnh của mình

Hầu hết các PHP framework đều có sẵn rất nhiều thành phần mở rộng (extensive), và cũng có rất nhiều framework khác nhau để các bạn lựa chọn Bạn thậm chí còn có thể tự viết riêng cho mình 1framework Tuy nhiên, bạn nên cân nhắc kỹ trước khi quyết định sử dụng 1 framework nào cho mình hay không, nên tự đặt câu hỏi cho chính mình là: Nó có tiết kiệm được cho bạn thời gian và công sức hay không ? Có giúp ứng dụng bạn hoạt động tốt hơn không ? Có cải thiện được sự ổn định cho ứng dụng không? Hãy tìm ra câu trả lời cho chính mình để quyết định xem bạn có cần xàiframework hay chưa, và nên xài framework nào

Mô hình client – sever:

Trang 28

Thực tế mô hình Client/Server là sự mở rộng tự nhiên và tiện lợi cho việc truyền thông tiến trình trên các máy tính cá nhân, mô hình này cho phép xây dựng các chương trình Client/Server một cách dễ dàng và sử dụng chúng để liên lạc với nhau đạt hiệu quả hơn Mô hình Client/Server như sau :

Hình 1.1:Mô hình client – server

Đây là mô hình tổng quát nhất, trên thực tế thì Server có thể được nối với nhiều Server khác nhằm làm việc hiệu quả hơn và nhanh chóng hơn Khi nhận được yêu cầu từ Server này có thể gửi tiếp yêu cầu vừa nhận được cho một Server khác ví dụ như database Server vì bản thân nó không thể sủ lí yêu cầu này được

Với mô hình trên thì mô hình Client/Server chỉ mang đặc điểm của phần mềm không liên quan đến phần cứng mặc dù trên thực tế yêu cầu cho một máy Server là cao hơn rất nhiều so với máy Client Lý do bởi vì máy Server phải quản lý rất nhiều các yêu cầu từ các Client khác nhau trên mạng máy tính

Mô hình web client – server

Trang 29

Hình 1.2:Mô hình web client – server

Mô hình Client/Server ứng dụng vào trang Web được gọi là mô hình Web Client/Server giao thức chuẩn được sử dụng để giao tiếp giữa Web Server và Web Client là HTTP

Web client (Web Browser): Các trình duyệt có vai trò như là Client trong

mô hình Client/Server, khi cần xem một trang Web cụ thể nào thì trình duyệt Web sẽ gửi yêu cầu lên cho Web Server để lấy nội dung trang Web đó

Web Server : Khi nhận yêu cầu từ một Client/Server, Web Server sẽ trả về nội dung file cho trình duyệt Web Server cho phép chuyển giao dữ liệu bao gồm văn bản, đồ hoạ và thậm chí cả âm thanh, video tới ngưòi sử dụng

Trang 30

CHƯƠNG II: PHÂN TÍCH THIẾT KẾ WEBSITE THÔNG TIN TUYỂN DỤNG

Với một website, doanh nghiệp có thể khai thác được các lợi ích sau:

- Chi phí thấp : Việc thiết lập Web không mất nhiều thời gian tiền bạc

- Giao tiếp hữu hiệu với khách hàng

- Sản phẩm được giới thiệu luôn mới và sẵn sàng trên trang web, nếu bạn cập nhật thông tin thường xuyên

- Giảm được chi phí in ấn, vì sản phẩm cùng hình ảnh và lời giới thiệu đã có sẵn trên trang web rồi

- Mở cửa 24/24 Mọi khách hàng từ khắp nơi trên thế giới đều có thể vào trang web của cơ sở bạn bất kỳ lúc nào họ muốn để biết thông tin về công ty của bạn, nâng cao hiệu quả trên thương trường

- Bạn sẽ không cần đối mặt trực tiếp với những khách hành khó tính, trong khi những lời giới thiệu của bạn lại dễ dàng đến với mọi người thông qua trang web

Mục đích: Xây dựng được một website với giao diện thân thiện giúp cho nhà

tuyển dụng đăng tin và quản lý 1 cách dễ dàng thông tin công ty hay doanh nghiệp của mình, tìm được những đối tượng phù hợp với công việc đang cần tuyển dụng Đồng thời đối với người tìm việc thì dễ dàng và nhanh chóng tìm được công việc theo mong muốn, phù hợp với hồ sơ hay sở thích của mình

Trang 31

Yêu cầu: Đây là một Website lớn và tương đối phức tạp, đòi hỏi nhiều kỹ

thuật tìm kiếm chuyên nghiệp và những công nghệ mới Vì vậy, trong phạm

vi đồ án sẽ giải quyết những vấn đề cơ bản với các chức năng như sau:

- Quản lý các thông tin nhà tuyển dụng

- Quản lý thông tin hồ sơ người đăng tìm việc làm

- Xây dựng chức năng tìm kiếm chuyên dụng

- Giới thiệu các thông tin nổi bật: việc làm hấp dẫn nhất, việc làm mới nhất, công việc phù hợp nhất, các hồ sơ đáp ứng được yêu cầu nhất…

- Các chức năng quản lý cập nhật của Admin

 Nhiệm vụ cơ bản

Website thông tin tuyển dụng và giới thiệu việc làm đăng tải thông về lĩnh vực việc làm Cập nhật những thông tin tuyển dụng cũng như giới thiệu việc làm một cách nhanh nhất, hiệu quả Vì vậy yêu cầu ban quản trị website là cần phải có hai bộ phân chính là quản lý tin và quản lý người dùng riêng biệt nhưng vẫn cần

có mối quan hệ chặt chẽ với nhau

Website gồm những nhiệm vụ sau:

- Cung cấp thông tin về tuyển dụng việc làm được cập nhật: các tin nhà tuyển dụng cần tuyển, tin các ứng viên đăng lên mong muốn việc làm nhằm đáp ứng đúng yêu cầu

- Thực hiện tư vấn, hỗ trợ, tìm kiếm một cách nhanh nhất

- Thống kê số lượng nhà tuyển dụng, số lượng ứng viên và số lượng công việc đang còn tuyển dụng

 Khảo sát hiện trạng

Hệ thống được chia làm các bộ phận và chức năng sau:

- Admin: người có quyền cao nhất, chịu trách nhiệm về các vấn đề của website, là

người cuối cùng kiểm duyệt nội dung trang web

Trang 32

- Bộ phận quản trị hệ thống: có nhiệm vụ duy trì , bảo trì hệ thống phần cứng, giải

quyết các vấn đề phát sinh về kỹ thuật nhằm giúp cho hệ thống hoạt động liên tục

- Bộ phận quản lý ứng viên:Quản lý thông tin cá nhân và các thông tin liên quan

như: Username, password, tiêu đề hồ sơ, họ tên, email, ngày sinh, giới tính, tình trạng hôn nhân, danh sách ngành nghề, tỉnh thành, địa chỉ, điện thoại, công việc mong muốn, trình độ, chức vụ, mức lương hiện tại, mức lương mong muốn, hình thức làm việc

- Bộ phân quản lý nhà tuyển dụng: Quản lý các thông tin: username và password

của nhà tuyển dụng, email, tên công ty, doanh nghiệp, địa chỉ cơ quan, tỉnh thành làm việc, danh sách ngành nghề đăng tin, quy mô của công ty, tiêu chí hoạt động, điện thoại liên lạc, fax, website, người đại diên hay liên hệ, hình thức liên hệ

- Bộ phận quản lý tin tức: kiểm tra nội dung tin tức

2.MÔ TẢ HỆ THỐNG

 Mô hình hoạt động

Trang 33

Hình 2.1 Mô hình hoạt động

 Quy trình xử lý

- Nhà tuyển dụng và các ứng viên đăng nhập bằng tài khoản trên website dựa vào yêu cầu cũng như mong muốn của mình đưa các thông tin tuyển dụng ( thông tin nhà tuyển dụng, tên chức vụ, mô tả công việc, yêu cầu, … ) , thông tin các ứng viên (thông tin cá nhân, học hàm, học vị, công việc có thể làm, yêu cầu, mức lương mong muốn,… )

- Bộ phận quản trị hệ thống : đưa, sắp xếp thông tin theo nội dung, cập nhật lên trang website

 Dựa vào quá trình thực hiện chia ra thành 2 nhiệm vụ chính

- Quản lý tin tức:

Trang 34

Website được xây dựng gồm nhiều chuyên mục, mỗi chuyên mục gồm nhiều tin tức Hệ thống quản lý tin tức giúp quản trị viên, biên tập viên,… có thể gửi các nội dung lên website một cách dễ dàng, nhanh chóng, lưu trữ phục hồi tin

cũ, quản lý các thông tin gửi đi và phản hồi

Hệ thống cho chép người xem các tin tức mới nhất ở từng chuyên mục nào đó, tìm kiếm thông tin

- Quản lý người dùng:

Công việc quản lý người dùng thuộc về người quản trị hệ thống Người đó có nhiệm vụ cấp quyền truy nhập và phân quyền theo các mức độ với các thành phần sử dụng trang web

Việc quản lý các chuyên mục, chuyên đề và quản lý người xem tin được phân quyền cho các quản trị viên Các quản trị viên có quyền tạo, sửa, các chuyên mục, quản lý thông tin người dùng.Việc xóa bài và xóa chuyên mục thuộc quyền của admin Những người này được cấp quyền cao nhất có thể xóa các tin trong các chuyên mục, hay xóa cả chuyên mục

 Các chức năng

Trang 35

Tên chức năng: mỗi chức năng có một tên duy nhất.

Ký hiệu: chức năng được ký hiệu bằng hình chữ nhật bên trong có tên chức năng

- Thông tin nhà tuyển dụng

- Đăng tin tuyển dụng

- Danh sách tin đăng

- Danh sách ứng viên lưu

Trang 36

- Mức lương mong muốn.

- Kinh nghiệm làm việc

Quản lý tin tức:

- Tiêu đề tin

- Nội dung tin

 Sơ đồ phân ra chức năng

Trang 37

Hình 2.2 Sơ đồ phân ra chức năng

Trang 38

 Sơ đồ luồng dữ liệu.

• Định nghĩa ký hiệu sử dụng

Biểu diễn hình elip:là một hoạt động có liên quan đến sự biến đổi hoặc tác động lên thông tin như tổ chức lại thông tin, bổ sung thông tin hoặc tạo ra thông tin mới

Tên chức năng

Biểu đồ hình mũi tên: là luồng thông tin vào hoặc ra khỏi một tiến trình Tên gọi thường là danh từ và tính từ

Luồng thông tin

Biểu thức cặp đường thằng song song:liệu là nơi biểu diễn thông tin cần cất giữ,

để một hoặc nhiều chức năng sử dụng

Vào

Ra

Kho dữ liệu

Ngày đăng: 13/08/2014, 07:40

HÌNH ẢNH LIÊN QUAN

Hình 1.1:Mô hình client – server - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 1.1 Mô hình client – server (Trang 28)
Hình 1.2:Mô hình web client – server - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 1.2 Mô hình web client – server (Trang 29)
Hình 2.1 Mô hình hoạt động - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.1 Mô hình hoạt động (Trang 33)
Hình 2.2 Sơ đồ phân ra chức năng - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.2 Sơ đồ phân ra chức năng (Trang 37)
Hình 2.3: Sơ đồ DFD mức 0Tác nhân ngoài - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.3 Sơ đồ DFD mức 0Tác nhân ngoài (Trang 39)
Sơ đồ DFD mức 1: - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
m ức 1: (Trang 40)
Hình 2.8: Sơ đồ DFD mức 2 - Tìm kiếm - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.8 Sơ đồ DFD mức 2 - Tìm kiếm (Trang 43)
Hình 2.9 : Sơ đồ DFD mức 2 - Quản lý tin tức - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.9 Sơ đồ DFD mức 2 - Quản lý tin tức (Trang 44)
Hình 2.10: Đặc tả chức năng - Đăng nhập - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.10 Đặc tả chức năng - Đăng nhập (Trang 45)
Hình 2.11: Đặc tả chức năng - Đăng tin - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.11 Đặc tả chức năng - Đăng tin (Trang 46)
Hình 2.12: Đặc tả chức năng - Tìm kiếm - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.12 Đặc tả chức năng - Tìm kiếm (Trang 47)
Sơ đồ khối: - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Sơ đồ kh ối: (Trang 50)
Hình  2.16 : Mô hình quan hệ của hệ thống - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
nh 2.16 : Mô hình quan hệ của hệ thống (Trang 52)
Hình 2.17 : Trang chủ - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.17 Trang chủ (Trang 53)
Hình 2.18 : Tìm kiếm việc làm - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.18 Tìm kiếm việc làm (Trang 53)
Hình 2.19 : Tìm ứng viên - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.19 Tìm ứng viên (Trang 54)
Hình 2.22: Trang ứng viên đăng ký thành viên - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.22 Trang ứng viên đăng ký thành viên (Trang 55)
Hình 2.23: Trang nhà tuyển dụng đăng ký thành viên - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 2.23 Trang nhà tuyển dụng đăng ký thành viên (Trang 56)
Bảng kinh nghiệm - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Bảng kinh nghiệm (Trang 59)
Bảng nộp hồ sơ - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Bảng n ộp hồ sơ (Trang 61)
Bảng tin tức - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Bảng tin tức (Trang 63)
Bảng tin tuyển dụng - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Bảng tin tuyển dụng (Trang 64)
Hình 3.1 Trang chủ - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.1 Trang chủ (Trang 68)
Hình 3.2 Trang chủ - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.2 Trang chủ (Trang 69)
Hình 3.3 : Tin tức - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.3 Tin tức (Trang 69)
Hình 3.4: Tin tức - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.4 Tin tức (Trang 70)
Hình 3.5: Admin đăng nhập - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.5 Admin đăng nhập (Trang 71)
Hình 3.7: Nhà tuyển dụng đăng nhập - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.7 Nhà tuyển dụng đăng nhập (Trang 72)
Hình 3.10:  Ứng viên đăng nhập thành công - Đồ án tốt nghiệp xây dựng website tuyển dụng việc làm
Hình 3.10 Ứng viên đăng nhập thành công (Trang 73)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w