09 WebCourse - File Mail Cookies Session

51
 Chuyên đề CSDL và WEB © 200 9 Khoa Công nghthô ng tin K hoa CNTT  ĐH.KHTN Bi 9 PHP - Qun lý file, cookies, session, mail

Transcript of 09 WebCourse - File Mail Cookies Session

Chuyn CSDL v WEB

Bai 9

PHP - Qun l file, cookies, session, mail

Khoa CNTT H.KHTN 2009 Khoa Cng ngh thng tin

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Ni dung K thut Upload File bng PHP K thut gi mail bng PHP S dng Cookie trong PHP S dng Session trong PHP

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Ni dung K thut Upload File bng PHP K thut gi mail bng PHP S dng Cookie trong PHP S dng Session trong PHP

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

K thut Upload File bng PHP C ch Upload File Cc bc thc hin upload file Kim tra li, nh dng, kch thc File upload Mt s li khi upload file Vn quyn truy cp file Vn gii hn kch thc file upload

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

C ch Upload FileYu cu trang upload.php Webserver

file

Internet or Intranet

Disk driver

Upload.php $_FILES["file"]["name"] $_FILES["file"]["type"] $_FILES["file"]["size"] $_FILES["file"]["tmp_name"] $_FILES["file"]["error"] move_uploaded_file(tmpName, savedName) file_exists(savedName) 2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Cc bc cn thit upload file Thit k form upload file Ly thng tin file upload Di chuyn tp tin t th mc tm sang th mc upload

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

1. Thit k Form Upload File Thit lp thuc tnh Form Method = POST Enctype = multipart/form-data

--- UploadForm.htm --

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

2. Ly thng tin file upload $_FILES: mng cha thng tin cc file upload $_FILES ['userfile'] : thng tin 1 file Cc thuc tnh: name type tmp_name error

size

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

V d

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

V d

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

3. Di chuyn tp tin t th mc tm sang th mc upload move_uploaded_file (tmp_name, saved_name)

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Kim tra li, nh dng, kch thc File upload Lu : $_FILES[""]["type"] "image/gif" "image/jpeg" "image/pjpeg" Firefox nhn y l file jpeg IE nhn y l file jpeg

$_FILES[""]["size"] = 0 : Khng c li > 0 : C li

: Kch thc file tnh theo byte

$_FILES[""]["error"] : M li khi upload File

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Mt s li khi upload fileM li 0 1 Hng s UPLOAD_ERR_OK UPLOAD_ERR_INI_SIZE ngha There is no error The uploaded file exceeds the upload_max_filesize directive in php.ini The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form The uploaded file was only partially uploaded No file was uploaded

2

UPLOAD_ERR_FORM_SIZE

3 4

UPLOAD_ERR_PARTIAL UPLOAD_ERR_NO_FILE

67

UPLOAD_ERR_NO_TMP_DIR Missing a temporary folderUPLOAD_ERR_CANT_WRITE Failed to write file to disk

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Vn v quyn truy cp FileCp quyn cho th mc /upload

PHP Warning: move_uploaded_file(upload/14.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in.Account IUSR_XXX

Lu : Ch cp quyn ghi cho th mc cn thit Khng cp quyn ghi cho th mc WebRoot

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Vn gii hn kch thc file upload Thay i cc tham s trong tp tin php.ini: upload_max_filesize (mc nh l 2M) post_max_size (mc nh l 8M)

Gii hn bng form: Thm tham s MAX_FILE_SIZE trc file field control

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Bi tp 6- Vit ng dng File Manager Chc nng c bn: Hin th danh sch file trong th mc / duyt th mc con S dng hnh nh (nu l th mc th hin th icon th mc, nu l file th hin th icon tng ng vi tng file) B sung thm cc chc nng: Upload file (mt hoc nhiu file) Xa file / th mc To th mc trong th mc hin hnh

Chc nng download file Cc nt delete, download l cc icon M rng: v giao din: p, ... 2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Mt s hm qun l file / th mc readdir file_exists is_dir is_file unlink rmdir

mkdir

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Ni dung K thut Upload File bng PHP K thut gi mail bng PHP S dng Cookie trong PHP S dng Session trong PHP

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

K thut gi Email bng PHP C ch gi Email Gi email s dng Outlook Gi email s dng WebMail PHP mail() Non Authentication PHP PEAR package SMTP Authentication

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

C ch gi EmailMail Client Mail server

Internet or Intranet

mail(to,subject,message)Internet or Intranet

Web Server

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

V d Cu hnh Gi Email s dng GMAIL

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

V d Cu hnh Gi Email s dng Y!MAIL

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

K thut gi Email bng PHP C ch gi Email Gi email s dng Outlook Gi email s dng WebMail PHP mail() Non Authentication PHP PEAR package SMTP Authentication

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Gi email s dng Outlook S dng th vi thuc tnh href=mailto

Format: mailto:address[?key=value][&key=value] Key SUBJECT CC BCC BODY nghaTiu Email Danh sch a ch Email ngi nhn, mi a ch cch nhau bng du chm phy (;). Danh sch a ch Email ngi nhn c n mi a ch cch nhau bng du chm phy (;). Ni dung Email.

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

K thut gi Email bng PHP C ch gi Email Gi email s dng Outlook Gi email s dng WebMail PHP mail() Non Authentication PHP PEAR package SMTP Authentication

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Gi mail s dng PHP mail() - Non Authentication S dng SMTP Server + hm th vin ca PHPmail(to, subject, message, headers, parameters)

Trong :Key Specifies a ch email ngi nhn Tiu Email (KHNG c cha k t xung dng) Ni dung Email Thng tin thm (vd: FROM, BCC, CC,) Cc thng tin ny nn phn cch nhau bng k t xung dng (\r\n) Tham s cu hnh cho ng dng gi mail

TO SUBJECT MESSAGE HEADERS PARAMETERS

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

Gi mail s dng PHP mail() - Non Authentication Cu hnh SMTP mc nh trong PHP (php.ini)Default SMTP smtp_port sendmail_from sendmail_path localhost 25 NULL NULL ngha DSN hoc IP Address ca SMTP Server Port ca SMTP a ch ngi gi ng dn n ng dng gi mail (UNIX)

2009 Khoa CNTT - HKHTN

Chuyn CSDL v WEB Bi 9 : PHP v File, Session, Cookies, Mail

V d :