YOMEDIA
Bài giảng Mã nguồn mở: Chương 5
Chia sẻ: Nguyễn Minh
| Ngày:
| Loại File: PPTX
| Số trang:53
116
lượt xem
14
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Bài 5 Ngôn ngữ kịch bản PHP nâng cao thuộc bài giảng Mã nguồn mở. Cùng nắm kiến thức trong chương này thông qua việc tìm hiểu các nội dung sau: cookie, session, xử lý form, gửi mail, xử lý file, chuyển hướng website với .htaccess, bắt lỗi chương trình, hướng đối tượng trong PHP.
AMBIENT/
Chủ đề:
Nội dung Text: Bài giảng Mã nguồn mở: Chương 5
- Môn Các Hệ Thống Mã Nguồn Mở 1
Chương 5 :
Ngôn ngữ kịch bản php
nâng cao
Giảng viên : ThS. Nguyễn
Minh Thành
Email :
thanhnm@itc.edu.vn
- Môn Các Hệ Thống Mã Nguồn Mở 2
Nội Dung
1. Cookie
2. Session
3. Xử lý Form
4. Gửi mail
5. Xử lý File
6. Chuyển hướng website với .htaccess
7. Bắt lỗi chương trình
8. Hướng đối tượng trong PHP
- Môn Các Hệ Thống Mã Nguồn Mở 3
Cookie
a- Cookie là mẫu tin nhỏ, có cấu trúc, dạng text lưu ở máy client khi
truy cập một website (nếu kịch bản trong trang đó có ch ức năng thi ết
lập cookie).Cookie được lưu ở thư mục :
C:\Documents and Settings\Administrator\Cookies
Ví dụ đây là một mẫu cookie khi viếng trang www.ibm.com
UnicaNIODID
4yZ3oOSlqrO-WrSL3kV
ibm.com/
1600
1465922944
30475811
543399952
30113713
*
- Môn Các Hệ Thống Mã Nguồn Mở 4
Cookie (tt)
b- Thiết lập cookie
Cú pháp: setcookie(name, value, expire[, path, domain]);
Trong PHP, câu lệnh setcookie phải đặt trước thẻ
Ví dụ :
Trang CreateCookie.php
- Môn Các Hệ Thống Mã Nguồn Mở 5
Cookie (tt)
d- Đọc cookie
Tệp ReadCookie.php
- Môn Các Hệ Thống Mã Nguồn Mở 6
Session
a- Session là một phiên làm việc kể từ khi client truy c ập vào website
cho đến khi đóng trình duyệt hay abandon(kết thúc) phiên.
PHP đưa ra biến toàn cục $_SESSION[] để lưu trữ thông tin, và bi ến
này có thể truy cập từ mọi trang PHP trong phiên.
b- Khai báo và thiết lập Session
session_start();
// hàm session_start() phải đặt trước thẻ
$_SESSION['username']=“NguyenMinhThanh";
Ví dụ : Trang Save_Session.php
- Môn Các Hệ Thống Mã Nguồn Mở 7
Session (tt)
c- Truy cập biến Session
Trang : Read_Session.php
- Môn Các Hệ Thống Mã Nguồn Mở 8
Session (tt)
Tóm tắt:
Thiết lập
session_start(); $_SESSION[‘tên’]=giá_trị;
Truy cập:
session_start(); $biến = $_SESSION[‘tên’];
Xóa giá trị đã thiết lập : unset($_SESSION[‘tên’]);
Hủy bỏ toàn bộ biến $_SESSION[]: session_destroy();
Session có rất nhiều ứng dụng, ví dụ như lưu trữ thông tin về giỏ hàng
trong E-commerce
- Môn Các Hệ Thống Mã Nguồn Mở 9
Form – truyền nhận thông tin
Giả sử method của Form là POST => server sẽ nhận được thông qua biến
toàn cục $_POST[‘tên’], với ‘tên’ là giá trị của thuộc tính name của phần tử
trong form.
Cú pháp Form
Biệt lệ : Các checkbox cùng tên
-
Phải đặt cùng tên như là một phần tử của mảng động, ví dụ box[]
-
Khi truy cập ở server chỉ lấy phần tên, ví dụ $_POST[‘box’], và trả về là một
mảng gồm các value được chọn.
-
Các trường hợp khác $_POST là một chuổi.
-
Có thể dùng $_REQUEST thay cho $_POST và $_GET.
-
Lưu ý: w3schools.com gọi chúng là Function, có lẽ không đúng!
- Môn Các Hệ Thống Mã Nguồn Mở 10
Ví dụ: Tệp DangKy.htm
Họ tên:
Đăng ký:Java
C Pattern
Trí tuệ nhân tạo
Tệp XuLy.php
- Môn Các Hệ Thống Mã Nguồn Mở 11
Xây dựng form Login “tự gọi”
Một trang PHP tự gọi lại chính nó là một phong cách nhiều LTV PHP ưa thích.
Dựa trên các kỹ thuật:
Chỗ nào cần đưa các giá trị php chỉ cần
-
-
Biến toàn cục lưu tên trang hiện thời : $_SERVER[‘PHP_SELF’]
-
Câu lệnh if .. else .. endif của PHP để điều khiển luồng HTML
Từ những kiến thức trên ta xây dựng một form đăng nhập.
- Môn Các Hệ Thống Mã Nguồn Mở 12
Trang Login.php
You are'nt login!
- Môn Các Hệ Thống Mã Nguồn Mở 13
Gửi mail
Cú pháp: mail(to,subject,message,headers,parameters)
Ý nghĩa các tham số:
- to, subject, message : như ý nghĩa các text box khi soạn mail
- headers :tùy chọn, có thể sử dụng Bcc, Cc
- parameter: tùy chọn, các thông số về trình soạn, gởi mail
Trong phần message: sử dụng ký hiệu \n để xuống dòng.
- Môn Các Hệ Thống Mã Nguồn Mở 14
Ví dụ :
Tệp Send_mail.php
Lưu ý:
-
người gởi phải có một đia chỉ mail. Theo dõi các kỹ thuật ch ống spam
của mỗi trình gởi, nhận mail của người nhận!
-
Phối hợp với form để soạn thảo một trình gởi mail
-
Có thể lập trình để gởi mail đến danh sách các địa ch ỉ đã lưu trong
CSDL
- Môn Các Hệ Thống Mã Nguồn Mở 15
Xử Lý File
1. Mở file
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
- Môn Các Hệ Thống Mã Nguồn Mở 16
Xử Lý File
2- Đóng file
fclose($file);
Cách khác: Sử dụng hàm file(path) mở đọc file và đóng file luôn
Ví dụ :
$myfile = 'vanban.txt';
$lines = file($myfile); // trả về mảng các dòng văn bản
echo("Số dòng: ".count($lines)."");
// cũng có thể dùng foreach($lines as $key=>$value)
foreach($lines as $line) {
echo($line."");}
3- Kiểm tra EOF
if (feof($file)) echo "End of file";
- Môn Các Hệ Thống Mã Nguồn Mở 17
Xử Lý File
4- Đọc từng dòng trong file
5- Đọc từng ký tự trong file
- Môn Các Hệ Thống Mã Nguồn Mở 18
Xử Lý File
6-Upload file
Filename:
- Môn Các Hệ Thống Mã Nguồn Mở 19
Xử Lý File
6-Upload file
Upload_file.php
- Môn Các Hệ Thống Mã Nguồn Mở 20
Cơ bản về .htaccess
1. Định nghĩa htaccess:
Apache cung cấp khả năng cấu hình thông qua những files truy cập siêu
văn bản .
Những files này cho phép thay đổi tinh chỉnh của Apache (httpd.conf) .
Theo mặc định file này có tên .htaccess.
.htaccess có tác dụng trên thư mục hiện hành (nơi chưa nó) và tất cả
các thư mục con. Vì vậy, muốn sử dụng .htacess để quản lí truy cập vào
website của mình, đơn giản bạn chỉ việc soạn thảo một file .htaccess, và
lưu nó vào thư mục root của website.
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
ERROR:connection to 10.20.1.100:9315 failed (errno=111, msg=Connection refused)
ERROR:connection to 10.20.1.100:9315 failed (errno=111, msg=Connection refused)
Đang xử lý...