Các kiểu lập trình trong PHP:

Một phần của tài liệu Xây dựng cổng thông tin quản lý thông tin sinh viên trường đại học hàng hải (Trang 66)

b. Yêu cầu chức năng vói từng mảng:

3.2.2.Các kiểu lập trình trong PHP:

Trong lập trình có hai kiểu lập trình chúng ta thường sử dụng đó là: lập trình hướng thủ tục và lập trình hướng đối tượng.

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

o Lập trình hướng đoi tượng: là kiếu lập trình dựa trên một nền

tảng các lớp đã được xây dựng sẵn. Nghĩa là chúng ta phải xác định trước những gì sẽ phải làm, những trường hợp sẽ xảy ra đế xây dựng lớp có những chức năng cần thiết cho quá trình xây dựng ứng dụng.

3.2.3. Một số khái niệm trong lập trình hướng đối tượng:

> Lóp (Class): một lớp có thể được hiểu là khuôn mẫu để tạo ra các đổi tượng. Trong một lóp, người ta thường dùng các biến để mô tả các thuộc tính và các hàm để mô tả các phương thức của đối tượng. Khi đã định nghĩa được lóp, ta có thế tạo ra các đối tượng tù’ lóp này. Đe việc sử dụng được dễ

dàng, thông qua hệ thống hàm tạo (constructor), người ta dùng lớp như một

kiểu dữ liệu để tạo ra các đối tượng.

o Ví dụ: Tạo cỉass ConMeo

Đe tạo class cho đối tượng ConMeo chúng ta cần xác định 2 phần: Thuộc tính: Tên, tuổi, màu lông,...

Hành động (phương thức): chạy, kêu, cắn, cào,... > Đối tượng (Object):

o Thế hiện một lóp thành một thực thế nào đó. o Có thể tạo nhiều đối tượng từ một lóp.

Ví dụ:

SconMeoA = new ConMeoO; SconMeoB = new ConMeoO;

Vỉ dụ:

Nhà tôi có một con mèo.

Nhà bạn tôi có nuôi một con mèo.

Tuy 2 con mèo trên có những đặc điểm khác nhau nhưng nó cùng là lớp con mèo.

> Thuộc tính (Attribute) và phưong thức (Method):

o Thuộc tính

■ Là các đặc tính, đặc điểm của một lớp. Thuộc tính bao

gồm:

• Các biến: lưu trữ các giá trị.

• Biểu thức get và set: cho phép lấy và gán giá trị. o Phương thửc

■ Là các hành động có thế được thực hiện từ lớp.

■ Phương thức cũng giống như hàm nhưng là hàm riêng

của lớp.

■ Phương thức có thế nhận vào các tham sổ và trả về các

giá trị.

> Tính kế thừa: là một un điếm của OOP nó giúp chúng ta mở rộng và phát triến chương trình mà không làm ảnh hưởng đến những thành phần đã có sẵn.

3.2.4. Biếu thức chính qui (Regular Expression): (adsbygoogle = window.adsbygoogle || []).push({});

Biếu thức chính qui (Regular Expression) bắt nguồn từ ngôn ngữ Perl và hiện nay hầu như có trong tất cả ngôn ngữ lập trình. Là một phần rất quan trọng trong quá trình xử lý chuỗi và hồ trợ các lập trình viên giảm bớt các

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

o Xử lý yêu cầu phức tạp trong chuỗi như bóc tách, thay đối

nội dung, loại bỏ các ký tự không cần thiết.

3.2.4.1. Một số hàm hỗ trợ biếu thức chính qui:

> Tham chiếu

o Trong lập trình có hai loại biến chúng ta thường sử dụng

truyền giá trị vào hàm đó là biến tham trị và biến tham chiếu.

Biến tham trị: khi truyền giá trị vào hàm, mọi sự thay đối của biến tham trị trong thân hàm không ảnh hưởng đến biến ban đầu.

Biến tham chiếu: khi truyền giá trị vào hàm, thì giá trị của biến tham chiếu sẽ thay đổi bởi nội dung xử lý trong thân hàm được gọi. o Ví dụ: <?php SphepCong = phepCong(10,5,$c); echo “<br>” . SphepCong; echo “<br>” . $c;

íunction phepCong($a=0, $b=0, &$c=0){ $tong = $a + $b; $c = $tong + 10; Return Stong; } ?> > pregmatch

A

Đại diện cho ký tự’ đầu tiên của chuỗi

$ Đại diện cho ký tự cuối cùng của chuồi

\ Hiến thị các ký tụ’ đặc biệt như: $, *,\

• Đại diện cho ký tự bất kỳ, kể cả dấu cách “ ”

[] Kí hiệu tập hợp

[A]

Dấu mũ đứng trước 1 tập hợp, mang ý nghĩa phủ định tập hợp đó

0 Đại diện cho tập hợp các mẫu con

*

Dấu * đại diện cho số lần xuất hiện của ký tự đứng trước nó từ 0 - n lần

+

Tương tự như dấu *, ký tự đứng trước dấu + có thể xuất hiện từ 1 - n lần

9 Ký tự đứng trước dấu ? có thể xuất hiện từ 0 - 1 lần

{} Đại diện cho số lần lặp lại ký tự đứng trước

\w Đại diện cho các chữ cái, chữ số và dấu _

\w Phủ định của \w

\s Lấy tập hợp các khoảng trắng

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn (adsbygoogle = window.adsbygoogle || []).push({});

chuỗi và trả về 0 nếu không tìm được. Hàm này trả về một mảng có một phần tủ' trong chuỗi.

pregmatch (Spattem, $subject, &$matches);

Spattern: chứa mẫu cần tìm kiếm, nó được xem như một

chuỗi.

Ssubịect: chứa chuỗi nguồn.

&$matches: mảng tham chiếu biến này chứa phần tủ’

được tìm thấy.

<?php

$subject = “abcdefasdasdasd”; $pattem = ‘#a#’;

echo preg_match($pattem, $subject, Smatches). ‘<br/>’; print_r($matches);

?>

> p r e g m a t c h a l l

o Hàm preg_match_all trả về giá trị 1 nếu tìm được pattern

trong chuỗi và trả về 0 nếu không tìm được. Hàm này trả về một mảng có nhiều phần tử trong chuỗi.

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

echo preg_match_all($pattern, $subject, Smatches) . ‘<br/>’;

echo ‘<pre>’; print_r($matches); echo ‘</pre>’; ?>

3.2.4.2. Các ký hiệu biếu thức chính qui

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

3.2.5. Mảng (Array)

Mảng (Array) là một thành phần rất quan trọng trong bất kỳ ngôn ngữ lập trình nào. Thông thường khi lập trình web với PHP thuần chúng ta rất ít khi đế ý đến kỹ thuật xử lý mảng điều đó làm hạn chế sự linh hoạt của ứng dụng.

Đối với các ứng dụng được xây dựng trên nền Zend Framework, nếu chúng ta không sử dụng tốt mảng thì thật sự sẽ khó khăn đế chúng ta có thế tối ưu mã của chương trình giúp cho ứng dụng của chúng ta chạy nhanh được.

Mảng là gì? Như chúng ta đã biết, biến là một noi đế lưu trữ số hoặc chữ. Vấn đề là, biến chỉ có thể lưu trữ một giá trị duy nhất. Còn mảng là một biến đặc biệt, nó có thế lưu trữ nhiều giá trị trong một biến duy nhất.

Ví dụ: chúng ta chỉ có thể lưu trữ một tên của nhân viên trong một biến. Nhưng đối với mảng chúng ta có thể lun trữ’ hàng ngàn tên nhân viên khác nhau:

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn $arr_employee[] = ‘Nguyễn Văn C’;

?>

Mảng có thế lưu trữ tất cả các giá trị biến của bạn dưới một tên duy nhất. Và bạn có thể truy cập giá trị bằng cách tham chiếu đến tên mảng. Mỗi phần tù' mảng có chỉ số riêng (index) đế chúng ta có thế truy cập chúng một cách dễ dàng.

Trong PHP có 3 loại mảng: mảng số nguyên (Numeric array),

mảng kết họp (Associative array), mảng đa chiều (Multidimensional array).

1. Mảng số nguyên (adsbygoogle = window.adsbygoogle || []).push({});

Mảng số nguyên là mảng có chỉ số (index or key) là ở dạng số. Chúng ta thường gọi là mảng liên tục. Có 2 cách đế tạo ra một mảng số nguyên:

Ví dụ 1:

Sears = array (“Saab”, “Volvo”, “BMW”, “Toyota”);

Ví dụ 2: $cars[0] = “Saab”; $cars[l] = “Volvo”; $cars[2] = “BMW”; $cars[3] = “Toyota”; 2. Mảng kết hợp

Mảng kết hợp là một mảng mà chỉ số (index or key) là một giá trị, chỉ số có thể là chuỗi hoặc số. Khi lưu trữ dữ liệu vào các phần tử mảng, các phần tủ' đó được đặt tên cụ thế. Mảng kết hợp là một sự bố sung cần thiết cho

các thành phần mảng trong PHP vì có nhiều vấn đề mảng số nguyên không

$ages = array (“Tuan” => 32, “Quang” => 30, “Long” => 34); Ví dụ 2: $ages[“Tuan”] = 32; $ages[“Quang”] = 30; $ages[“Long”] = 34; 3. Mảng đa chiều

Mảng đa chiều là mảng mà mỗi phần tử trong mảng chính có thế là một mảng và mỗi phần tử trong mảng con cũng có thế là một mảng con khác. Chúng ta thường gọi mảng đa chiều là mảng lồng.

Ví dụ:

$students[“SV001”] = array (‘id’ => 1, ‘name’ => ‘Tuấn’, ‘points’ => array(l0,5,8) );

$students[“SV002”] = array (‘id’ => 2, ‘name’ => ‘Tín’, ‘points’ => array(7,8,6) );

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn print_r($arr_name);

echo ‘</pre>’;

3.2.6. Một số phương thức thường sử dụng trong PHP.

- Phương thức SESSION: được hiểu là khoảng thời gian người sử dụng giao tiếp với 1 ứng dụng. Một session được bắt đầu khi người sử dụng truy cập vào ứng dụng lần đầu tiên, và kết thúc khi người sử dụng thoát khỏi ứng dụng. Mỗi session sẽ có được cấp một định danh (ID) khác nhau và nội dung được lưu trong thư mục thiết lập trong file php.ini (tham số session.savepath).

- Phương thức COOKEI: là 1 đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy người sử dụng. Nó được trình duyệt gởi ngược lên lại server mỗi khi browser tải 1 trang web từ server. Những thông tin được lưu trữ trong cookie hoàn toàn phụ thuộc vào website trên server. Mồi website có thể lưu trữ những thông tin khác nhau trong cookie, ví dụ thời điểm lần cuối ta ghé thăm website, đánh dấu ta đã login hay chưa, v.v...

3.3. Hệ quản trị MySQL:

3.3.1. Tổng quan về MySQL:

MySQL là một hệ CSDL được dùng khá phố biến trên thế giới. Đặc điếm nối bật của MySQL là tốc độ nhanh, dễ sử dụng, chạy trên nhiều hệ điều hành.

* Các loại lệnh: MySQL gồm những lệnh giúp người sử dụng thực hiện những chức năng khác nhau. Các chức năng này được nhóm thành các loại sau:

- Các lệnh mô tả dữ liệu. - Các lệnh thao tác dữ liệu. - Lệnh hỏi dữ liệu.

+ Tạo và duy trì CSDL. + Tạo và duy trì các phần.

+ Chuyển việc sử dụng tới các CSDL và các bảng. * Các thành tố:

- Tên trường.

- Kiểu dữ liệu (Data Type). - Hằng số (Constant). - Các từ khóa (Keyword). - Các lệnh (Expression).

- Các điều kiện tìm kiếm (Search Conditions). - Các mệnh đề xác định phạm vi.

* Các hàm trong MySQL: phân loại các hàm thành các lóp: - Các hàm tập hợp. - Các hàm chuỗi. - Các hàm ngày giờ. - Các hàm Logic. - Các hàm đặc biệt. * Liên kết: - Liên kết ngang bằng. - Liên kết không ngang bằng. - Liên kết ngoài.

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn - mysql_drop_db(): Hàm xóa CSDL.

- mysql_select_db(): Hàm chọn CSDL hoạt động.

- mysql_query(): Hàm gửi câu lệnh SQL tới máy chủ MySQL. - mysql_bd_query():Hàm gửi câu lệnh SQL tới máy chủ MySQL. (adsbygoogle = window.adsbygoogle || []).push({});

3.4. Các công cụ hỗ trợ ứng dụng và phát triến Website:

- HTML: Nắm bắt được các thẻ xử lý giao diện, cấu trúc, thuộc tính cấu hình nên khung trang web. Quan trọng nhất vẫn là các thẻ <table>, <div>, <ul> ... <li>,...

- CSS: Thiết kế giao diện cho Website.

- JAVASCRIPT - JQUERY - AJAX: Thiết kế các sự kiện, hiệu ứng và quan trọng hơn là ta sẽ dung mã ajax đế gửi dữ liệu ...

Hệ Thống cổng Thông Tin Sinh Viên Admin panel

Quàn Trị Người Dùng Quản Trị Tin Tức Quản Trị Nhóm Thông Báo

Ỷ' s Danh Sách J

Tạo Mới J

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

CHƯƠNG IV: CÀI ĐẶT CHƯƠNG TRÌNH.

4.1. Chức năng hệ thống:

4.1.1. Đăng nhập:

CÓNG THÔNG TIN SINH VIÊN Đáng Nhập *

29661

Mật Khấu

□ Ghi nhớ

Đăng nhập

- Người dùng sẽ được cấp 1 tài khoản đế đăng nhập vào hệ thống, khi đăng nhập thành công, hệ thống sẽ thực hiện kiếm tra đế phân quyền và ra những giao diện tưong tác tương ứng.

4.1.2. Đăng xuất:

CỔNG THÔNG IĨÌIN SINH VIÊN

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

- Khi tài khoản muốn thoát khỏi hệ thong sẽ thực hiện thoát khỏi hệ thống thông qua chức năng đăng xuất.

4.2. Chức năng

ngưòi dùng:

T R ƯỜ NG Đ Ạ I H Ọ C H À NG HẢ I VI Ệ T NA M

CỐNG THÔNG TIN SINH VIỂN

Y.Ì T? Y.ì

w w w

&

Thông báo đóng tiền học(30-ll-2011) (adsbygoogle = window.adsbygoogle || []).push({});

Sinh viên : Trằn Trọng Dương vẫn còn nợ: -426000 đồng học phi. Đề nghị sớm hoán thành! S-Xem chi hết

Thông báo đóng tiền học(30-ll-2011)

Thông báo đóng tiền học(30-l 1-2011)

Thòng báo đóng tiền học(30-l 1-2011)

Thòng báo đóng tiền học(30-l 1-2011)

Thông báo đóng tiền học(30-ll-2011)

ts

Home Logm Trợ giúp

CỐNG THÔNG TIN SINH VIÊN

Đảng Nhập •

[29661

i Ghi nhớ

Thòng bảo đóng tién học (30-11-2011) [Chi tiết]

- Khi người dùng truy cập vào hệ thống, họ có thể xem các thông tin, thông báo từ phòng ban: đào tạo, hành chính. Có thế thực hiện tìm kiếm thông báo thông qua chức năng tìm kiếm. Và người dùng cũng sẽ được hỗ

Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn Đồ án tốt nghiệp

4.3.Chức năng quản trị:

- Người quản trị sẽ thực hiện đăng nhập vào hệ thống qua tài khoản admin và thực hiện các chức năng cập nhật: quyền, tài khoản, loại tin, tin tức, nhóm, thành viên nhóm, gửi thông báo, và quản lý thông báo đến và đã gửi...

4.3.1. Form quản lý quyền:

Trang Chú » Quyền han » Quàn lý

Tim kiếm nâng cao

Hã Quyên

Quản lý quyên

Hiển thị 1-7 cùa 7 kết quà Tén Quyên I Thao tác dử liêu 1 2 admin p y » Sinh viên p X Giảng viên p yX Nhân viên p X Giáo Vụ p /X Phòng Đào Tạo p X Phòng Hành Chinh p yX Copyright © 2011 by My Company.

Hệ Thống cổng Thông Tin Sinh Viên Admin panel

Quàn Trí Người Dùng Quàn Trị Tin Tức Quàn Trị Nhóm Thông Báo

Hệ Thống cổng Thông Tin Sinh Viên Admin panel

Quản Trị Người Dùng Quàn Trị Tin Tức Quản Trí Nhỏm Thông Báo

13660 13660 Mai Vản Tẳn Nam Kích hoat Sinh viên p >*' X 14481 14481 Nguyễn Manh Khỡl Chưabiết Kích hoat Sinh viên p s * 15442 15442 Hà Phi Hùng Chưabiết Kích hoạt Sinhvién p y * 15501 15501 Vũ Thanh Tùng Chưabiết Kích hoạt Sinh viên p►' X 15572 15572 Phạm Hồng Sơn Chưabiết Kích hoạt Sinh viên p X 15635 15635 Trằn Thanh Hải Chưabiết Kích hoạt Sinh viên p y X 15640 15640 Bùi Vãn Khương Chưabiết Kích hoat Sinh viên p►' X 15696 15696 Lê Tuấn Anh Chưabiết Kích hoạt Sinh viên p * 15895 15895 Hoàng Việt Phương Chưabiết Kích hoạt Sinh viên p í*' X

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

4.3.2. Form cập nhật quyền: (adsbygoogle = window.adsbygoogle || []).push({});

Hệ Thống cổng Thông Tin Sinh Viên Admin panel

Quàn Tn Người Dùng QuànTrỊTinTức Quản Trị Nhóm Thông Báo

Trang Chú » Quyền hạn »1 J> cập nhật

Cập Nhật Quyền 1

Các trường có dấu * là bắt buộc

Tên Quyển * ịadmin

I Lưu l

IS QuảnLý J

Copyright © 2011 by My Company. Ali Rights Reserved. Povvered bv Yii Framework

4.3.3. Form tạo mói quyền:

Hệ Thống cổng Thông Tin Sinh Viên Admin panel

Quàn Tri Người Dùng Quàn Trị Tin Tức Quàn Tn Nhóm Thông Báo

Trang Chủ > Quyền hạn » Tạo mới

Tạo mái quyền

Các trường có dẩu * là bắt buộc

Tên Quyền * Tạo mói I Thao tác dữ liệu Y s Danh sách Quán Lý I Thao tác dữ liệu ' x Danh Sách Tạo Món

Xem QuyênênJ

Copyright © 2011 by My Company.

Đồ án tốt nghiệp Giáo viên hướng dẫn T.s: Nguyễn Cảnh Toàn

4.3.4. Form xóa quyền:

Trang Chủ » Quyền hạn » Quản lý

Quản lý quyền Giáo Vu p / * p y * I Thao tác dử liệu Danh Sách Ị^-Jj Tạo Mói Copyright © 2011 by My Company.

4.3.5. Form quản lý tài khoản:

Trang Chú » Tài khoản » Quản lý

Tìm kiểm nâng cao

Quản Lý Tài Khoản

[ Thao tác dữ liệu k ^ Danh sách Hiển thị 1-10 cúa 13330 kết quả CTL

I Thông báo »

Điếm I Thông tin khác » Tài liệu Tin tức

17303 Nguyên lý hệ điều hành Phồng 306-A4 Thứ 4 bắt đẩu từ tiết 7 đến hết tiết 9Từ: 08/08/11 Đện: 20/11/11 15402 Quản trĩ doanh nghiệp Phòng 306-A4 Từ: 08/08/11 Đến 20/11/11 (adsbygoogle = window.adsbygoogle || []).push({});

Thứ 6: bắt đẵu từ tiết 7 đến hết tiết 10 17209 Lý thuyết đồ thị Phòng 306-A4 Từ. 08/08/11 Đén: 20/11/11

Thứ 3: bắt đầu từ tiết 10 đến hết tiết 12 17301 Kỹ thuật vi xữ lý Phòng 306-A4 Từ- 08/08/11 Oện 20/11/11

Thứ 3: bắt đẳu từ tiết 7 đến hết tiết 9 17214 Lặp trinh Windows Phòng 306-A4 Từ 08/08/11 Đện: 20/11/Ị1

Thứ 2 bắt đẩu từ tiết 8 đến hết tiết 9

17403 Phòng 306-A4 Từ: 08/08/11 Đện: 20/11/11

Thứ 5: bắt đẩu từ tiết 7 đến hết tiết 9

MMH Tên môn học TC X Y z Hệ 4 Điểm chữ 17202 Tin hoc đai cương 4 8.4 8.0 8.1 3.0 18101 Đai số 3 92 6.0 6.6 20 17203 Toán rời rạc 2 8 3 4 0 4 9 10

Một phần của tài liệu Xây dựng cổng thông tin quản lý thông tin sinh viên trường đại học hàng hải (Trang 66)