Tải bản đầy đủ (.ppt) (148 trang)

Tìm hiểu kỹ thuật upload file trong 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 (3.77 MB, 148 trang )

Nguyễn Hữu Đại - 06HC026
La Tấn Đức - 06HC032
Nguyễn Ái Quang Huy - 06HC065
Phạm Hồng Nhật - 06HC122
Nguyễn Quang Tâm - 06HC150
Phần nội dung

Tìm hiểu kỹ thuật upload file trong PHP và
webserver Apache.

Tìm hiểu phương pháp giải quyết việc tên file
trùng nhau.

Tìm hiểu các hàm quản lý file và thư mục trên
server.

Tìm hiểu các hàm nén file.
Phần bài tập

Tìm hiểu trang web Image Gallery. Trình
bày cách tổ chức file và cách cài đặt của
trang web.

Xây dựng trang web quản lý file: cho phép
upload, edit, copy, move, delete file hay folder
trên server.
Nội dung:
-
Kỷ thuật upload file trong PHP webServer
Apache
Trình bày: Nguyễn Hữu Đại – 06HC026


Nguyễn Hữu Đại- 06HC026

Các nhà phát triển web cho phép users có
thể upload file của họ để chia sẻ cho bạn
bè, người thân

Các ứng dụng Photo Galaries thì cho
phép upload các alum hình ảnh .

Các mạng xã hội cũng có chức năng
upload chia sẻ videos
Nguyễn Hữu Đại- 06HC026
move_uploaded_file($_FILE['file_uploa
d']['tmp_name'],"destination")

Giá trị trả về : TRUE nếu thành công .

Giá trị trả về : FALSE nếu thất bại .
Nguyễn Hữu Đại- 06HC026

Sử dựng biến toàn cục $_FILE để xác
định các thuộc tính của file

$_FILE['file_upload']['name'] : Tên file
(file_upload) upload lên server .

- $_FILE['file_upload']['size'] : Kích thước
của file .

- $_FILE['file_upload']['type'] : Kiểu file .

Nguyễn Hữu Đại- 06HC026

- $_FILE['file_upload']['tmp_name'] : Tên
thư mục tạm trên server để chứa file .

- $_FILE['file_upload']['error'] : Thông báo
lỗi khi upload file
Constant Name
Value
Explain
UPLOAD_ERR_OK
0 Thành công
UPLOAD_ERR_INI_SIZE
1 Kích thước file vượt quá mức được cấu
hình trong file php.ini
UPLOAD_ERR_FORM_SIZE
2
Kích thước file vượt quá Max_Size được
thiết lập trong hidden fiel
UPLOAD_ERR_PARTIAL
3 File chỉ được upload từng phần .
UPLOAD_ERR_NO_FILE
4 Không thành công
Nguyễn Hữu Đại- 06HC026
Nguyễn Hữu Đại- 06HC026
Nguyễn Hữu Đại- 06HC026
Nội Dung :

Giải quyết bằng cách đổi tên file
Các bước thực hiện :


Kiểm tra tên file có bị trùng hay không .

Tiến hành đổi tên (nếu bị trùng) .

Kiểm tra lại .

Upload file lên server
Nguyễn Hữu Đại- 06HC026
Nguyễn Hữu Đại- 06HC026
Nguyễn Hữu Đại- 06HC026
Nguyễn Hữu Đại- 06HC026
Nội dung:
Trình bày: Phạm Hồng Nhật - 06HC122
Phạm Hồng Nhật - 06HC122
CÁC HÀM QUẢN LÝ FILE & THƯ
MỤC TRÊN SERVER
1. chdir

bool chdir(string dir) : chuyển đổi thư mục
làm việc hiện hành sang thư mục dir.

Return:

Flase : nếu không thể chuyển đổi thư mục hiện hành.
▪ True : mọi trường hợp còn lại.

Trường hợp chdir() flase, một cảnh báo được sinh ra. Để
khử ta chỉ cần đặt @ trước lời gọi hàm :
$chdir = @ chdir ('directory_path');

Phạm Hồng Nhật - 06HC122

Ex:
$directory = 'some_dir';
print "Current working directory before calling <i>chdir
('$directory')</i>: " . getcwd () . '<br />';
print "Current working directory before calling <i>chdir
('$directory')</i>: " . getcwd () . '<br />';
print "Current working directory after calling <i>chdir
('$directory')</i>: " . getcwd () . '<br />';
Hàm lấy thư mục
hiện hành
Phạm Hồng Nhật - 06HC122
2. Closedir

void closedir(resource_pointer dir_stream) :
được dùng để hủy luồng(thư mục) đã được
mở trước đó bằng hàm opendir()

Hầu như không cần thiết dùng hàm closedir()
vì một luồng thư mục được mở sẽ tự động
đóng lại khi kết thúc script PHP.
Phạm Hồng Nhật - 06HC122
3. Dir

mixed dir(string dir) :khi gọi hàm nó mở một luồng
tới thư mục dir và trả về một đối tượng và đồng thời
tạo ra một con trỏ cho luồng này.
$object_name = dir ('directory_path');


Đối tượng trả về chứa 3 phương thức:
raed();rewind(); close(); không có đối số và được
gọi theo cú pháp:
$object_name->method_name ();

Ex: liệt kê mọi thư mục trong thư mục hiện hành.
$directory = getcwd ();
$dir_object = @ dir ($directory) or die ("Could not
open a directory stream for <i>$directory</i>");
print_r ($dir_object);
while ( $entry = $dir_object->read () )
{ print "<br />$entry"; }
$dir_object->close ();
Phạm Hồng Nhật - 06HC122
4. readdir

string readdir(resource_pointer dir_stream) : đọc
ra các muc từ luồng thư mục được mở.
Phạm Hồng Nhật - 06HC122

Ex:
$directory = getcwd ();
$directory_stream = @ opendir ($directory) or die ("Could not
open a directory stream for <i>$directory</i>");
while ($entry = readdir ($directory_stream))
{
$extension = substr ($entry, strrpos ($entry, '.'));
switch ($extension)
{ case '.php':
case '.phps':

case '.php3':
case '.phtml':
print '<br />\n$entry';
break;
default: break;
}
}
Phạm Hồng Nhật - 06HC122
5. rewinddir

rewinddirvoid rewinddir(resource_pointer
dir_stream) :dùng quay lại đầu luồng thư muc.
Hàm này là nguyên do thư mục được đọc lại.
Phạm Hồng Nhật - 06HC122

Những hàm thông dụng:
chgrp; chmod; chown; clearstatcache; copy;
diskfreespace; fclose; feof; fgetc; fgetcsv; fgets;
fgetss; file; fileatime; filegroup; fileinode ;
filemtime; fileowner; fileperms; filesize; filetype;
file_exists; flock; fopen; fpassthru; fputs; fread;
fseek; ftell; fwrite; getlastmod; getmyinode; is_dir;
is_executable; is_file; is_link; is_readable;
is_writeable; link; linkinfo; lstat;
Phạm Hồng Nhật - 06HC122

×