Bài giảng Lập trình Web - Bài 4.1: PHP
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
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
Accept
Chứa thông tin về browser và HĐH
Các kiểu dữ liệu mà browser chấp nhận
Chỉ ra những ngôn ngữ để server đáp ứng
Accept-Language
Accept-Encoding
Chỉ ra các kiểu file compress để server nén dữ
liệu
Accept-Charset
Connection
Cookie
Những character set mà browser chấp nhận
Chỉ ra các trạng thái kết nối
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
Content-Language
Expires
Chỉ định kiểu MIME của tài liệu
Ngôn ngữ trong nội dung trả về
Chỉ định thời gian nội dung trả về sẽ hết hạn
Thời điểm tài liệu cập nhật lần gần đây nhất
Kiểu nén dữ liệu gửi về browser
Tên của server
Last-Modified
Content-Encoding
Server
Content-Length
Location
Kích thước của tài liệu
Chuyển hướng sang trang khác
Tập các biến cookie mà server gửi đến browser
Set-cookie
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:
<?php
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
<?php
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
<?php
// 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
Mô tả
application/msword
application/pdf
application/vnd.ms-excel
Application/zip
File word
File pdf
File excel
File zip
20
Bạn đang xem tài liệu "Bài giảng Lập trình Web - Bài 4.1: PHP", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_lap_trinh_web_bai_4_1_php.pdf