04/10/2018, 17:53

Tạo trang upload hình ảnh bằng PHP

Mình sẽ giúp các bạn cách upload một file hình lên server của bạn bằng cách sử dụng PHP và HTML Form. Bạn cũng sẽ hiểu được cách kiểm tra xem file upload lên có phải là file hình hay không? và còn nhiều điều chờ bạn khám phá. Bước 1 : Tạo 1 folder và đặt tên nó là “ images ” ...

Tạo trang upload hình ảnh bằng PHP

Mình sẽ giúp các bạn cách upload một file hình lên server của bạn bằng cách sử dụng PHP và HTML Form. Bạn cũng sẽ hiểu được cách kiểm tra xem file upload lên có phải là file hình hay không? và còn nhiều điều chờ bạn khám phá.

Bước 1 : Tạo 1 folder và đặt tên nó là “ images ” nằm tại đường dẫn cùng với file php mà chúng ta sẽ tạo sau đây. Đảm bảm là folder này có đủ quyền để mọi người có thể upload file.
Bước 2 : Tạo file php và tạm đặt tên là ” upload.php ” sau đó các bạn copy và dán đoạn code sau vào nó

<?php
// Ấn định  dung lượng file ảnh upload
define ("MAX_SIZE","100");

// hàm này đọc phần mở rộng của file. Nó được dùng để kiểm tra nếu
// file này có phải là file hình hay không .
function getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}

//This variable is used as a flag. The value is initialized with 0 (meaning no
// error  found)
//and it will be changed to 1 if an errro occures.
//If the error occures the file will not be uploaded.
$errors=0;
//checks if the form has been submitted
if(isset($_POST['Submit']))
{
// lấy tên file upload
$image=$_FILES['image']['name'];
// Nếu nó không rỗng
if ($image)
{
// Lấy tên gốc của file
$filename = stripslashes($_FILES['image']['name']);
//Lấy phần mở rộng của file
$extension = getExtension($filename);
$extension = strtolower($extension);
// Nếu nó không phải là file hình thì sẽ thông báo lỗi
if (($extension != "jpg") && ($extension != "jpeg") && ($extension !=
"png") && ($extension != "gif"))
{
// xuất lỗi ra màn hình
echo '<h1>Đây không phải là file hình!</h1>';
$errors=1;
}
else
{
//Lấy dung lượng của file upload
$size=filesize($_FILES['image']['tmp_name']);
if ($size > MAX_SIZE*1024)
{
echo '<h1>Vượt quá dung lượng cho phép!</h1>';
$errors=1;
}

// đặt tên mới cho file hình up lên
$image_name=time().'.'.$extension;
// gán thêm cho file này đường dẫn
$newname="images/".$image_name;
// kiểm tra xem file hình này đã upload lên trước đó chưa
$copied = copy($_FILES['image']['tmp_name'], $newname);
if (!$copied)
{
echo '<h1> File hình này đã tồn tại </h1>';
$errors=1;
}}}}

if(isset($_POST['Submit']) && !$errors)
{
echo "<h1>File hình đã được Upload thành công </h1>";
}

?>

 
<form name="newad" method="post" enctype="multipart/form-data"
action="">
<table>
<tr><td><input type="file" name="image"></td></tr>
<tr><td><input name="Submit" type="submit" value="Upload image">
</td></tr>
</table>
</form>

Chúc các bạn thành công !

Tags: hoc php lập trình php php code php tutorial thu thuat php

Chuyên Mục: PHP

Bài viết được đăng bởi webmaster

  • Cubi

    bạn có thể cho vào lun trong database msql dc ko mình cần cái này

    • Thu Thuat Web

      Xin lỗi bạn, bài viết chỉ đề cập đến phần upload, tuy nhiên mình có thể gợi ý như sau :Để lưu vào database , bạn chèn câu lệnh INSERT (tìm hiểu thêm về sql) ,ở dòng 50 là được, bạn cứ thử làm đi, Chúc bạn thành công !

  • tâm đá

    bạn có thể chỉ cách tạo trang post bài lên ko

  • Hiếu Trần

    cám ơn bạn, có ích cho mình

0