Tải bản đầy đủ (.pdf) (20 trang)

Bài giảng - Công nghệ Web và ứng dụng 4.1 PHP

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (697.51 KB, 20 trang )

PHP


Giới thiệu về PHP


PHP (Hypertext Preprocessor)
 Là ngôn ngữ script chạy trên server (Server
Scripting)
 Là mã nguồn mở, chạy được trên nhiều
platforms (Unix, Linux, Windows)
 PHP scripts:
• chứa text, thẻ HTML, script
• trả về kết quả cho trình duyệt một plain HTML

2


Giới thiệu về PHP (tt)


Lịch sử phát triển
 PHP (1994): được phát triển để phát sinh các form đăng
nhập sử dụng giao thức HTTP của Unix
 PHP 2 (1995): script server, hỗ trợ CSDL, upload file,
khai báo biến, mảng, hàm đệ quy, câu điều kiện, biểu
thức, …
 PHP 3 (1998): hỗ trợ ODBC, đa hệ điều hành, giao thức
email (SNMP, IMAP)
 PHP 4 (2000): trở thành một thành phần độc lập cho các
webserver


 PHP 5 (2005): bổ sung Zend Engine II hỗ trợ lập trình
HĐT, XML, SOAPcho Web Services, SQLite
 PHP 7.1.0: Phiên bản mới nhất 8/2016
3


Giới thiệu về PHP (tt)
Tại sao PHP?
 Phần mềm mã nguồn mở, miễn phí
 Chạy trên nhiều platforms khác nhau (Unix,
Linux, Windows)
• Tương thích với hầu hết các web server: Apache,
IIS, Caudium, Netscape Enterprise Server
• Tương thích với hầu hết các HQT CSDL: MySQL,
Informix, Oracle, Sybase, Solid, PostgreSQL,
Generic ODBC, etc.

 Dễ học và phát triển nhanh các ứng dụng trên
Web
 Được sử dụng rộng rãi trong môi trường phát
triển ứng dụng Web
4


Giới thiệu về PHP (tt)

5


Giới thiệu về PHP (tt)



Làm thế nào để chạy PHP
 Cài đặt PHP
• />
 Download web server Apache
• />
 Cài đặt MySQL
• www.mysql.com

 Hoặc sử dụng các chương trình đã đóng gói
sẵn: Appserv, Wamp, Xampp, Vertrigo …

6


Giới thiệu về PHP (tt)


Cơ chế hoạt động của WebServer

7


PHP nâng cao


HTTP header



HTTP header
Http header là các thông tin điều khiển
nằm trong các http request, http response
 Chứa các chỉ thị báo cho trình
duyệt/server


 Chuyển qua trang khác
 Không hiển thị file php
 Không lưu vào cache

10


HTTP header


Xem http header bằng FireBug
 Mở firefox, nhấn F12 để bật FireBug
 Gõ địa chỉ 1 trang web
 Xem header trong cửa sổ FireBug

11


HTTP header


Xem http header bằng LiveHTTPHeaders
(tiện ích mở rộng của Firefox)





Request header
Header

Description

Host

Địa chỉ server đang truy cập

User-Agent

Chứa thông tin về browser và HĐH

Accept

Các kiểu dữ liệu mà browser chấp nhận

Accept-Language

Chỉ ra những ngôn ngữ để server đáp ứng

Accept-Encoding

Chỉ ra các kiểu file compress để server nén dữ
liệu


Accept-Charset

Những character set mà browser chấp nhận

Connection

Chỉ ra các trạng thái kết nối

Cookie

Danh sách các biến cookie đã được tạo trước
đây

Referer

Địa chỉ của trang web mà từ đó link đến trang
hiện tại

……………..
13


Reponse header
Header

Description

Cache-Control

Thông báo cho browser có cache dữ liệu hay

không

Content-Type

Chỉ định kiểu MIME của tài liệu

Content-Language

Ngôn ngữ trong nội dung trả về

Expires

Chỉ định thời gian nội dung trả về sẽ hết hạn

Last-Modified

Thời điểm tài liệu cập nhật lần gần đây nhất

Content-Encoding

Kiểu nén dữ liệu gửi về browser

Server

Tên của server

Content-Length

Kích thước của tài liệu


Location

Chuyển hướng sang trang khác

Set-cookie

Tập các biến cookie mà server gửi đến browser

14


HTTP status code
2xx: request thành công
 3xx: chuyển hướng đến trang khác
 4xx: có lỗi xảy ra trong request
 5xx: server bị lỗi
 Một số status code thường gặp


 200: OK, được gửi trong response thì request
thành công
 302: tạm chuyển đến trang khác
 400: bab request; 401: unauthorized;
403: forbidden;
404: trang không tìm thấy
 500: internal server error
15


Ứng dụng của HTTP Header

Chuyển hướng (redirection): yêu cầu trình
duyệt chuyển sang trang khác
 Cú pháp: header(“location:url”)
 VD:
header(“location:login.php”)
?>


16


Ứng dụng của HTTP Header
Chuyển hướng (redirection):
 VD:


Nếu browser là IE thì chuyển đến trang welcome.html,
ngược lại chuyển đến welcome1.html
if(strpos($_SERVER['HTTP_USER_AGENT'],'MSIE')>0)
header("location:welcome.html");
else header("location:welcome1.html");
?>

17


Ứng dụng của HTTP Header
Content-type: dùng để báo cho browser kiểu

dữ liệu mà webserver đang trả về cho
browser
 Cú pháp:
header(“content-type:MimeType”)


18


Ứng dụng của HTTP Header
Content-type:
 VD


// Chuẩn bị xuất 1 file pdf
header('Content-type: application/pdf');
// có tên là downloaded.pdf
header('Content-Disposition: attachment;
filename="downloaded.pdf"');
// nội dung từ file pdf nguồn test.pdf
readfile('test.pdf'); ?>

19


Ứng dụng của HTTP Header


Một số kiểu Mimetype

Mimetype
application/msword

Mô tả

application/pdf

File pdf

application/vnd.ms-excel

File excel

Application/zip

File zip

File word

20



×