intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Lập Trình Web: PHP Nâng Cao - GV: Trần Đình Nghĩa

Chia sẻ: Kun | Ngày: | Loại File: PDF | Số trang:31

523
lượt xem
246
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Cơ chế Upload File: Thiết kế Form cho phép Upload File; Xử lý Lưu File upload lên server; Kiểm tra lỗi, định dạng, kích thước File upload. Cơ chế gửi Emai: Gửi mail sử dụng Outlook; Gửi mail sử dụng Web Mail; PHP mail() – Non Authentication; PHP PEAR package – SMTP Authentication

Chủ đề:
Lưu

Nội dung Text: Lập Trình Web: PHP Nâng Cao - GV: Trần Đình Nghĩa

  1. ĐẠI HỌC SÀI GÒN – KHOA CNTT Lập Trình Web THIẾT KẾ VÀ LẬP TRÌNH WEB PHP Nâng Cao GV: Tr ần Đình Nghĩa tdnghia1977@gmail.com 1
  2. Nội dung 1. Upload File 2. Gửi Email 3. Cookies THIẾT KẾ VÀ LẬP TRÌNH WEB 4. Sessions 2
  3. Upload File  Cơ chế Upload File  Thiết kế Form cho phép Upload File  Xử lý Lưu File upload lên server  Kiểm tra lỗi, định dạng, kích thước File upload THIẾT KẾ VÀ LẬP TRÌNH WEB 3
  4. Cơ chế Upload File Internet / Intranet File Yêu cầu trang upload.php Web Browser --- Upload.php --- Driver • $_FILES[“file"]["name"] THIẾT KẾ VÀ LẬP TRÌNH WEB • $_FILES[“file"]["type"] • $_FILES[“file"]["size"] • $_FILES[“file"]["tmp_name"] • $_FILES["file"]["error"] • move_uploaded_file(tmpName,savedName) • file_exists(savedName) 4
  5. Thiết kế Form cho phép Upload File  Thiết lập thuộc tính Form  Method : POST  Enctype: multipart/form-data --- UploadForm.htm --- THIẾT KẾ VÀ LẬP TRÌNH WEB 5
  6. Xử lý lưu File lên File System trên Server  move_uploaded_file(tmp_name, saved_name) --- Upload.php --- 6
  7. Kiểm tra lỗi, định dạng và kích thước file --- Upload.php ---
  8. Cấu hình phân quyền WRITE cho thư mục Upload PHP Warning: move_uploaded_file(upload/14.jpg) [function.move-uploaded-file]: failed to open stream: Permission THIẾT KẾ VÀ LẬP TRÌNH WEB denied in . 8
  9. Gửi Email  Cơ chế gửi Email  Gửi mail sử dụng Outlook  Gửi mail sử dụng Web Mail  PHP mail() – Non Authentication THIẾT KẾ VÀ LẬP TRÌNH WEB  PHP PEAR package – SMTP Authentication 9
  10. Cơ chế gửi email Internet / Intranet mail(to,subject,message…) Mail Client THIẾT KẾ VÀ LẬP TRÌNH WEB Internet / Intranet Web Server 10
  11. Ví dụ cấu hình gửi email sử dụng GMAIL THIẾT KẾ VÀ LẬP TRÌNH WEB 11
  12. Gởi mail sử dụng cấu hình trong Mail-Client  Sử dụng mailto  Format: mailto:address[?key=setting][&key=setting] … Ý nghĩa THIẾT KẾ VÀ LẬP TRÌNH WEB Key Tiêu đề Email SJT Danh sách địa chỉ Email người nhận, mỗi địa chỉ cách nhau bằng dấu chấm phẩy (;). CC Danh sách địa chỉ Email người nhận được ẩn mỗi địa chỉ cách nhau bằng dấu chấm phẩy (;). BCC Nội dung Email. BODY 12
  13. Sử dụng PHP mail() – Non Authentication  mail(to,subject,message,headers,parameters) Key Specifies Địa chì email người nhận TO Tiêu đề Email (KHÔNG được chứa ký tự xuống dòng) SUBJECT Nội dung Email MESSAGE Thông tin thêm (vd: FROM, BCC, CC,…) Các thông tin này nên phân cách nhau HEADERS bằng ký tự xuống dòng (\r\n) THIẾT KẾ VÀ LẬP TRÌNH WEB Tham số cấu hình cho ứng dụng gửi mail PARAMETERS 13
  14. Cấu hình chuẩn của PHP mail() – Non Authentication  Cấu hình mặc định được định nghĩa trong file php.ini Ý nghĩa Default DSN hoặc IP Address của SMTP SMTP localhost Server Port của SMTP smtp_port 25 THIẾT KẾ VÀ LẬP TRÌNH WEB Địa chỉ người gửi sendmail_from NULL Đường dẫn đến ứng dụng gửi mail sendmail_path NULL (UNIX) 14
  15. Ví dụ
  16. Gởi mail sử dụng PHP Pear package – SMTP Authentication 1. Sử dụng PEAR package Mail.php  require_once(‘Mail.php’); 2. Khởi tạo thể hiện để gửi mail sử dụng Mail::factory()  $smtp = Mail::factory(‘smtp’, $params);  $params[“host”] = “hostname”;  $params[“auth”] = true;  $params[“username”] = “smtp_username”;  $params[“password”] = “smtp_password”; 3. Gửi mail sử dụng hàm send()  $mail = $smtp->send($to, $headers, $message) THIẾT KẾ VÀ LẬP TRÌNH WEB  $headers['From'] = 'from@example.com';  $headers['To'] = $to;  $headers['Subject'] = 'Test message';  $headers['Cc'] = 'cc@example.com';  $headers['Reply-To'] = 'from@example.com'; 4. Kiểm tra lỗi gửi mail  if (PEAR::isError($mail)) echo($mail->getMessage()); 16
  17. Ví dụ 17
  18. Cookies cookie $_COOKIE setcookie Client Webserver  Là 1 tập tin được server lưu xuống máy của client  Mỗi lần client gửi request 1 trang web, đồng THIẾT KẾ VÀ LẬP TRÌNH WEB thời sẽ gửi file cookie này lên server  Các điều khiển xử lý thông tin (lưu, lấy) do server thực hiện  Thường được sử dụng để lưu thông tin cá nhân của client 18
  19. Sử dụng cookies  Lệnh ghi cookie  setcookie(name, value, expire, path, domain);  setrawcookie(name, value, expire, path, domain); Name: tên cookie  Value: giá trị cookie  Expire: ngày/khoảng thời gian hết hạn hết hạn  Path : đường dẫn mà cookie được gởi đi  Domain : xác định tên miền mà cookie được gởi đi  THIẾT KẾ VÀ LẬP TRÌNH WEB Bắt buộc phải xuất hiện trước thẻ   Lấy giá trị cookie  echo $_COOKIE[“cookieName"];  Xóa cookie  setcookie(“cookieName", "", time()-3600); 19
  20. Ví dụ cookies  Lưu thông tin đăng nhập cookie $_COOKIE[fieldName] Lưu username & password setcookie THIẾT KẾ VÀ LẬP TRÌNH WEB Client Webserver 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
3=>0