Hướng dẫn can we do images using php? - chúng ta có thể tạo hình ảnh bằng php không?

PHP được sử dụng rộng rãi trong việc phát triển các ứng dụng phía máy chủ. Trên một trang web động, tải lên các tệp để cập nhật nó là một thói quen. Và PHP hiệu quả xử lý quá trình này. Bạn có thể sử dụng PHP để xử lý việc tải lên nhiều tệp lên máy chủ và hiển thị chúng trên một trang web động. & NBSP;

PHP được sử dụng với hầu hết tất cả các phần mềm cơ sở dữ liệu phổ biến. MySQL là một trong những cơ sở dữ liệu phổ biến nhất được sử dụng trong các ứng dụng PHP. Có nhiều cơ sở dữ liệu khác như PostgreSQL, Sybase, Oracle DataBase, v.v. có thể dễ dàng kết nối với các ứng dụng PHP của bạn. & NBSP;

Một hình ảnh có thể được tải lên và hiển thị trên trang web PHP của bạn theo nhiều cách. Phương pháp phổ biến nhất để đạt được điều này là bằng cách tải hình ảnh vào thư mục máy chủ và cập nhật tên của nó trong cơ sở dữ liệu. Phương pháp này có hiệu quả bởi vì trong trường hợp này, hình ảnh won đã chiếm bất kỳ khoảng trống nào bên trong cơ sở dữ liệu và điều này cũng sẽ làm cho tải trang web của bạn nhanh hơn. Một cách khác là chèn hình ảnh vào cơ sở dữ liệu trực tiếp, thay vì tải nó lên máy chủ. Phương pháp này không được khuyến nghị vì các hình ảnh chiếm rất nhiều không gian trong cơ sở dữ liệu, do đó làm tăng kích thước của nó. Điều này cũng sẽ làm chậm việc tải các trang web của bạn. & NBSP;

Trong bài viết này, bạn sẽ xem xét một phương thức hiệu quả để đạt được hình ảnh tải lên trong PHP, bằng cách tải tệp hình ảnh vào thư mục máy chủ và chỉ cần chèn tên tệp vào cơ sở dữ liệu. Tên tệp được sử dụng để truy xuất tệp mong muốn sau này và hiển thị nó trên trang web của bạn. Bạn sẽ sử dụng cơ sở dữ liệu MySQL để chứng minh tải lên hình ảnh trong PHP.

Các bước sau đây cần được tuân thủ để tải lên hình ảnh và hiển thị nó trên trang web bằng PHP:

  1. Tạo một biểu mẫu bằng HTML để tải lên các tệp hình ảnh.
  2. Kết nối với cơ sở dữ liệu để chèn tệp hình ảnh.

Chương trình để đạt được nhiệm vụ

Bước 1: Tạo biểu mẫu bằng HTML để tải lên các tệp hình ảnh.

Mã HTML sau đây sẽ tạo một biểu mẫu đơn giản trên trang web của bạn, với tùy chọn Chọn Tệp và một nút để tải lên tệp đã chọn.

& nbsp; & nbsp; & nbsp; & nbsp; tải lên hình ảnh trong PHP

    

    

    

        

& nbsp; & nbsp; & nbsp; & nbsp; tải lên hình ảnh trong PHP

                

            

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

                

                UPLOAD

                

            

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

    

& nbsp; & nbsp; & nbsp; & nbsp; tải lên hình ảnh trong PHP

#wrapper{

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

form{

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

& nbsp; & nbsp; & nbsp; & nbsp; chiều rộng: 50%;

& nbsp; & nbsp; & nbsp; & nbsp; lề: 20px tự động;

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

img{

& nbsp; & nbsp; & nbsp; & nbsp; chiều rộng: 50%;

& nbsp; & nbsp; & nbsp; & nbsp; lề: 20px tự động;

& nbsp; & nbsp; & nbsp; & nbsp; biên giới: 2px solid #DAD7D7;

}

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

#img_div{

& nbsp; & nbsp; & nbsp; & nbsp; chiều rộng: 50%;

& nbsp; & nbsp; & nbsp; & nbsp; lề: 20px tự động;

& nbsp; & nbsp; & nbsp; & nbsp; biên giới: 2px solid #DAD7D7;

}

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

#img_div:after{

& nbsp; & nbsp; & nbsp; & nbsp; chiều rộng: 50%;

& nbsp; & nbsp; & nbsp; & nbsp; lề: 20px tự động;

& nbsp; & nbsp; & nbsp; & nbsp; biên giới: 2px solid #DAD7D7;

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

& nbsp; & nbsp; & nbsp; & nbsp; chiều rộng: 50%;

& nbsp; & nbsp; & nbsp; & nbsp; lề: 20px tự động;

error_reporting(0);

& nbsp; & nbsp; & nbsp; & nbsp; tải lên hình ảnh trong PHP

& nbsp; & nbsp; & nbsp; & nbsp; tải lên hình ảnh trong PHP

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

Mã CSS sau đây là để tạo kiểu dáng cơ bản cho mẫu HTML.

& nbsp; & nbsp; & nbsp; & nbsp; chiều rộng: 50%;

& nbsp; & nbsp; & nbsp; & nbsp; lề: 20px tự động;

& nbsp; & nbsp; & nbsp; & nbsp; biên giới: 2px solid #DAD7D7;

}

biểu mẫu div {

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

        }else{

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

    }

}

$ result = mysqli_query ($ db, "chọn * từ hình ảnh");

?>

Giải thích chương trình

Chương trình HTML

Chương trình HTML ở trên tạo ra một biểu mẫu HTML đơn giản có tùy chọn để chọn một tệp từ hệ thống của bạn để tải lên và nút tải lên trên mạng. Nó sẽ tải lên tệp hình ảnh bằng phương thức POST.

Thuộc tính Enctype: Thuộc tính này được sử dụng để chỉ định định dạng mã hóa, trong đó dữ liệu được gửi trong biểu mẫu phải được mã hóa trước khi gửi đến máy chủ. Thuộc tính này rất quan trọng và không chỉ định điều này, hình ảnh sẽ không được tải lên máy chủ.

Cú pháp

enctype="multipart/form-data"

Chương trình PHP

Đầu tiên, bạn cần tạo cơ sở dữ liệu bằng máy chủ XAMPP/WAMP. Ở đây, bạn phải tạo một cơ sở dữ liệu và đặt tên cho nó là Image Image_upload. Tiếp theo, bạn cần tạo một bảng mới trong cơ sở dữ liệu. Bạn đã tạo một bảng mới có tên là hình ảnh. Tạo hai trường trong bảng:

  • ID - int (11)
  • Tên tệp - Varchar (100)

Chương trình PHP được thảo luận trước đó sẽ kết nối với cơ sở dữ liệu bằng phương thức mySQLI_connect (). Dữ liệu được gửi bằng phương thức POST trong biểu mẫu HTML được lưu trữ trong một tên tệp $ biến. Để chèn dữ liệu vào cơ sở dữ liệu, bạn phải áp dụng truy vấn SQL. Phương thức MySQLI_Query () thực thi truy vấn SQL và cuối cùng lưu trữ dữ liệu được gửi vào cơ sở dữ liệu.

Phương pháp PHP được sử dụng trong chương trình

  • isset 

Phương pháp ISSET là một phương pháp PHP tích hợp thiết yếu. Phương pháp này được sử dụng để tìm nếu nó đặt một biến hay không. Một biến được cho là một biến đã thiết lập nếu nó giữ một giá trị khác với null. Nói cách khác, phương pháp ISSET được sử dụng để xác định xem một biến đã được khai báo và có giá trị không null hay không. Nó có một loại trở lại boolean. Nếu nó tìm thấy biến được đặt, phương thức này sẽ trả về true, nếu không, nó sẽ trả về sai.

Phương pháp này chứng tỏ là hữu ích hơn trong các mã dài hơn. Trong các đoạn mã nhỏ, bạn có thể dễ dàng theo dõi những gì và có bao nhiêu biến đã được khai báo. Nhưng trong trường hợp các chương trình dài hơn, bạn có thể phải đối mặt với vấn đề mất dấu của các biến. Trong những trường hợp như vậy, phương pháp ISSET rất hữu ích. & NBSP; Bạn có thể vượt qua tên của biến mà bạn muốn kiểm tra.

Cú pháp để kiểm tra trạng thái của một biến bằng phương pháp ISSET:

ISSET (hỗn hợp $ var1, hỗn hợp $ var2, & nbsp; ... $ vars)

Phương pháp này chấp nhận các tham số hỗn hợp. Các biến hỗn hợp có nghĩa là bạn có thể truyền một hoặc nhiều biến của các loại dữ liệu khác nhau cho isset trong PHP dưới dạng tham số.

  • $_POST

$ _POST là một phương thức toàn cầu trong PHP được sử dụng để gửi dữ liệu người dùng được gửi vào biểu mẫu HTML từ trình duyệt đến máy chủ web. Dữ liệu được mã hóa trước tiên và sau đó được chuyển đến máy chủ thông qua tiêu đề HTTP Query_String. Là một phương pháp Superglobal, bạn có thể sử dụng bất cứ nơi nào trong toàn bộ chương trình. Phương thức ISSET cũng có thể được sử dụng với phương thức $ _POST để kiểm tra xem người dùng có gửi giá trị hay không. & NBSP;

Dữ liệu được gửi bằng phương thức $ _POST có thể có bất kỳ kích thước nào. Ngoài ra, phương pháp này được bảo mật vì, không giống như phương thức $ _GET, dữ liệu là vô hình và không thể được truy cập bởi bất kỳ ai từ URL. Phương thức này chấp nhận một mảng làm tham số của nó và hỗ trợ nhiều loại dữ liệu như chuỗi, số nguyên và nhị phân. & Nbsp;

  • mysqli_connect

Phương pháp này được sử dụng để kết nối ứng dụng PHP với máy chủ web bằng cách thiết lập kết nối an toàn giữa chúng. Một phương pháp khác được gọi là mysql_connect cũng thực hiện cùng một nhiệm vụ, nhưng mysqli_connect an toàn hơn và ở đây, tôi thể hiện một phiên bản cải tiến. & Nbsp;

Cú pháp để thiết lập một kết nối mới bằng phương thức MySQLI_Connect:

mysqli_connect ("host", "tên người dùng", "mật khẩu", "cơ sở dữ liệu_name")

Phương pháp này chấp nhận 4 tham số:

Máy chủ: Đây là một tham số tùy chọn. Nếu bạn đang ở trên một máy chủ cục bộ, thì hãy vượt qua NULL hoặc từ khóa, localhost, để chỉ định rằng kết nối phải được thực hiện với máy chủ web cục bộ.

Tên người dùng: Tham số này được sử dụng để chỉ định tên người dùng của MySQL. Đây cũng là một tham số tùy chọn. Nếu bạn đang ở trên một máy chủ cục bộ, thì tên người dùng sẽ là Root Root.

Mật khẩu: Tham số này được sử dụng để chỉ định mật khẩu của người dùng trong MySQL. Bạn có thể bỏ qua tham số này vì nó là một tham số tùy chọn.

name_of_database: Tham số này là tên của cơ sở dữ liệu bạn muốn thiết lập kết nối. Nó sẽ thực hiện tất cả các truy vấn trên cơ sở dữ liệu được chỉ định này. Tham số này cũng là tùy chọn.

  • mysqli_query

Phương pháp này được sử dụng để thực hiện truy vấn được truyền dưới dạng tham số cho nó. Các truy vấn chèn, chọn, cập nhật và xóa có thể được thực thi bằng phương thức MySQLI_Query. Nếu các truy vấn được thực thi thành công, thì phương thức này sẽ trả về một đối tượng hoặc giá trị boolean true, tùy thuộc vào loại truy vấn được thực thi.

Cú pháp để thực thi truy vấn MySQL bằng phương thức MySQLI_Query trong PHP:

MySQLI_Query ($ Connection, Truy vấn, Chế độ)

Phương pháp này chấp nhận 3 tham số:

Kết nối: Đây là một tham số bắt buộc và nó đại diện cho đối tượng của máy chủ mà kết nối được thiết lập.

Truy vấn: Tham số này cũng là bắt buộc và nó đại diện cho chuỗi truy vấn SQL cần được thực thi.

Chế độ: Đây là một tham số tùy chọn. Nó đại diện cho chế độ của kết quả. Nó là một hằng số và được sử dụng để lưu trữ giá trị trả về của phương thức.

  • move_uploaded_file

Phương pháp này được sử dụng để di chuyển một tệp được chỉ định (đã được tải lên) lên một vị trí mới. Phương thức này trước tiên xác thực tệp được chỉ định và nếu nó hợp lệ, thì hãy di chuyển nó đến vị trí đích. Nếu đã có một tệp ở vị trí đích, thì nó sẽ bị ghi đè bởi tệp mới.

Cú pháp để di chuyển một tệp đến một vị trí cụ thể bằng phương thức Move_uploaded_file:

Move_uploaded_file (File_Name, Destination_Path)

Phương pháp này chấp nhận 2 tham số:

  • FILE_NAME: Tham số này là một chuỗi đại diện cho tên của tệp sẽ được chuyển đến một vị trí mới.
  • Destination_path: Đây là một chuỗi chỉ định vị trí đích nơi cần di chuyển tệp.

Mã cuối cùng kết hợp PHP, CSS và HTML

Sau đây là chương trình kết hợp minh họa cách đạt được hình ảnh tải lên trong PHP. & NBSP;

error_reporting(0);

?>

?>

$ msg = "";

// Kiểm tra xem người dùng đã nhấp vào nút "Tải lên" & NBSP;

if (isset ($ _ post ['uploadFile'])) {

& nbsp; & nbsp; & nbsp; $ filename = $ _files ["selectfile"] ["name"];

& nbsp;

& nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; // Kết nối với cơ sở dữ liệu

& nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; // truy vấn để chèn dữ liệu đã gửi

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; // Chức năng thực thi truy vấn trên

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

        }else{

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

    }

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

}

?> 

 

 

?>

$ msg = "";

    

  

        #wrapper{

// Kiểm tra xem người dùng đã nhấp vào nút "Tải lên" & NBSP;

if (isset ($ _ post ['uploadFile'])) {

& nbsp; & nbsp; & nbsp; $ filename = $ _files ["selectfile"] ["name"];

        }

        form{

// Kiểm tra xem người dùng đã nhấp vào nút "Tải lên" & NBSP;

if (isset ($ _ post ['uploadFile'])) {

        }

& nbsp; & nbsp; & nbsp; $ filename = $ _files ["selectfile"] ["name"];

& nbsp;

        }

        img{

& nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; // Kết nối với cơ sở dữ liệu

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;}

        #img_div{

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;}

        #img_div:after{

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

        }

    

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

 

    

         

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

         

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

            

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

                UPLOAD

                

            

        

    

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

  • & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

Table name: Image

Làm thế nào tôi có thể lưu trữ nhiều hình ảnh trong PHP?

Tải lên nhiều tệp trong PHP (Tải lên ...
Bao gồm tệp cấu hình cơ sở dữ liệu để kết nối và chọn cơ sở dữ liệu MySQL ..
Nhận tiện ích mở rộng tệp bằng hàm pathInfo () trong PHP và kiểm tra xem người dùng chỉ chọn các tệp hình ảnh ..
Tải hình ảnh lên máy chủ bằng hàm di chuyển_uploaded_file () trong PHP ..