Khi thực hiện upload hình ảnh trong PHP bạn sẽ được làm quen với hàm move_uploaded_file. Đây là một hàm quan trọng không thể thiếu. Hãy cùng tìm hiểu về move_uploaded_file trong PHP qua bài viết này.
Cú pháp:
move_uploaded_file($file_tmp, $destination);
Giải thích:
- $file_tmp: File tạm được tải lên
- $destination: thư mục file sẽ được chuyển đến
Bước 1: Trước tiên bạn sẽ cần chuẩn bị một tập tin tên là upload.php
:
<!DOCTYPE html>
<html>
<head>
<title>Upload file trong PHP/title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="content">
<form method="POST" action="upload.php" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit" name="upload">POST</button>
<?php require "xuly.php"?>
</form>
</div>
</body>
</html>
Trong đó:
enctype='multipart/form-data
là đây là một loại mã hóa mà các tập tin và dữ liệu được gửi qua POST.
Bước 2: Tiếp theo bạn sẽ tạo ra một file là xuly.php
<?php
// Kiểm tra
if(isset($_FILES['file'])){
$errors= array();
$file_name = $_FILES['file']['name'];
$file_size =$_FILES['file']['size'];
$file_tmp =$_FILES['file']['tmp_name'];
$file_type=$_FILES['file']['type'];
if($file_size > 2097152){
$errors[]='Tập tin cho phép 2 MB';
}
// Up file vào thư mục
if(empty($errors)==true){
move_uploaded_file($file_tmp,"photo/".$file_name);
echo "<br>";
echo "Success";
}else{
print_r($errors);
}
}
?>
Giải thích:
- Đầu tiêu trong file
xuly.php
sẽ dùng hàm isset để kiểm tra người dùng đã nhập dữ liệu vào chưa - Nếu các điều kiện kiểm tra đúng sẽ dùng
move_uploaded_file
đưa dữ liệu vào thư mục là photo. Phía sau$file_name
chính là tên của tập tin đó.
Bước 3: Tạo một thư mục photo
nằm trong htdocs
ngang hàng với 2 tập tin trên
Kết quả sau khi tiến hành upload