Bagaimana saya bisa menyisipkan gambar di php?

Umumnya, ketika kita mengunggah file gambar di PHP, gambar yang diunggah disimpan di direktori server dan masing-masing nama gambar disimpan di database. Pada saat ditampilkan, file diambil dari server dan gambar ditampilkan di halaman web. Namun, jika Anda tidak ingin memakan ruang server, file tersebut dapat disimpan di database saja. Anda dapat mengunggah gambar tanpa menyimpan file secara fisik di server menggunakan database MySQL. Sangat mudah untuk menyimpan dan mengambil gambar dari database menggunakan PHP dan MySQL

Jika Anda khawatir tentang ruang server dan memerlukan ruang kosong di server Anda, Anda dapat memasukkan file gambar langsung ke database tanpa mengunggahnya ke direktori server. Prosedur ini membantu mengoptimalkan ruang server karena konten file gambar disimpan di database, bukan di server. Dalam tutorial ini, kami akan menunjukkan cara menyimpan file gambar ke dalam database MySQL dan mengambil gambar dari database menggunakan PHP

Sebelum mulai mengintegrasikan unggahan file dengan database, lihat struktur file

store_retrieve_image_from_database/
├── dbConfig.php
├── index.php
├── upload.php
├── view.php
└── css/
    └── style.css

Masukkan File Gambar di MySQL

MySQL memiliki tipe data BLOB [binary large object] yang dapat menampung data biner dalam jumlah besar. Tipe data BLOB sangat cocok untuk menyimpan data gambar dalam database. Di MySQL, empat tipe BLOB tersedia – TINYBLOB, BLOB, MEDIUMBLOB, dan LONGBLOB. Tipe data LONGBLOB sangat cocok untuk menyimpan data file gambar

Buat Tabel Basis Data

Untuk menyimpan konten file, tabel diperlukan dalam database. SQL berikut membuat tabel images_ dengan bidang tipe data LONGBLOB di database MySQL

CREATE TABLE `images` [
  `id` int[11] NOT NULL AUTO_INCREMENT,
  `image` longblob NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
_

Konfigurasi Basis Data [dbConfig. php]

File dbConfig.php_ digunakan untuk menghubungkan dan memilih database. Tentukan host basis data [$dbHost_], nama pengguna [$dbUsername], kata sandi [

CREATE TABLE `images` [
  `id` int[11] NOT NULL AUTO_INCREMENT,
  `image` longblob NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
0], dan nama [
CREATE TABLE `images` [
  `id` int[11] NOT NULL AUTO_INCREMENT,
  `image` longblob NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
1] sesuai kredensial basis data MySQL Anda

// Database configuration
$dbHost     = "localhost";
$dbUsername = "root";
$dbPassword = "root";
$dbName     = "codexworld";

// Create database connection
$db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];

// Check connection
if [$db->connect_error] {
    die["Connection failed: " . $db->connect_error];
}

_

Formulir Pengunggahan Gambar

Buat formulir HTML dengan kolom input file untuk memilih file gambar yang akan diunggah. Pastikan

tag berisi atribut berikut
  • metode = "posting"
  • enctype="multipart/formulir-data"
    Select Image File:
    
    

Simpan File Gambar di Database [unggah. php]

File

CREATE TABLE `images` [
  `id` int[11] NOT NULL AUTO_INCREMENT,
  `image` longblob NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
2 menangani upload gambar dan proses penyisipan database

  • Periksa apakah pengguna memilih file gambar untuk diunggah
  • Ambil konten file gambar dengan tmp_name menggunakan fungsi file_get_contents[] PHP
  • Masukkan konten biner dari gambar ke dalam database menggunakan PHP dan MySQL
  • Tampilkan status pengunggahan gambar kepada pengguna
// Include the database configuration file
require_once 'dbConfig.php';

// If file upload form is submitted
$status = $statusMsg = '';
if[isset[$_POST["submit"]]]{
    $status = 'error';
    if[!empty[$_FILES["image"]["name"]]] {
        // Get file info
        $fileName = basename[$_FILES["image"]["name"]];
        $fileType = pathinfo[$fileName, PATHINFO_EXTENSION];

        // Allow certain file formats
        $allowTypes = array['jpg','png','jpeg','gif'];
        if[in_array[$fileType, $allowTypes]]{
            $image = $_FILES['image']['tmp_name'];
            $imgContent = addslashes[file_get_contents[$image]];

            // Insert image content into database
            $insert = $db->query["INSERT into images [image, created] VALUES ['$imgContent', NOW[]]"];

            if[$insert]{
                $status = 'success';
                $statusMsg = "File uploaded successfully.";
            }else{
                $statusMsg = "File upload failed, please try again.";
            }
        }else{
            $statusMsg = 'Sorry, only JPG, JPEG, PNG, & GIF files are allowed to upload.';
        }
    }else{
        $statusMsg = 'Please select an image file to upload.';
    }
}

// Display status message
echo $statusMsg;
?>

Ambil gambar dari database [view. php]

Dalam file

CREATE TABLE `images` [
  `id` int[11] NOT NULL AUTO_INCREMENT,
  `image` longblob NOT NULL,
  `created` datetime NOT NULL DEFAULT current_timestamp[],
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
_3, kami akan mengambil konten gambar dari database MySQL dan mencantumkannya di halaman web

  • Parameter data, charset, dan base64 pada atribut src, digunakan untuk menampilkan image BLOB dari database MySQL
// Include the database configuration file
require_once 'dbConfig.php';

// Get image data from database
$result = $db->query["SELECT image FROM images ORDER BY id DESC"];
?> num_rows > 0]{ ?>
    


        fetch_assoc[]]{ ?>
            
        
    


Image[s] not found...


_

Unggah Banyak Gambar dan Simpan di Database menggunakan PHP dan MySQL

Kesimpulan

Tutorial ini membantu Anda mengintegrasikan fungsi pengunggahan file tanpa menyimpan file di server. Anda dapat menggunakan skrip contoh ini untuk mengunggah & menyimpan gambar dalam database, dan mengambil gambar dari database, dan menampilkannya di halaman web menggunakan PHP dan MySQL. Agar proses pengunggahan gambar mudah digunakan, gunakan jQuery untuk mengunggah file dengan progress bar menggunakan Ajax dan PHP

Apakah Anda ingin mendapatkan bantuan implementasi, atau memodifikasi atau meningkatkan fungsionalitas skrip ini?

Bagaimana cara mengunggah gambar dan menampilkannya di PHP?

$_FILES["file"]["name"]. "
"; $image=$_FILES["file"]["name"]; /* Displaying Image*/ $img="upload/". $image; echo ''; } } } else { echo "Invalid file"; } ?>

Bagaimana cara mengunggah gambar di PHP MySQL?

Dapatkan ekstensi file menggunakan fungsi pathinfo[] di PHP dan validasi format file untuk memeriksa apakah pengguna memilih file gambar. Unggah gambar ke server menggunakan fungsi move_uploaded_file[] di PHP. Masukkan nama file gambar di database MySQL menggunakan PHP . Status unggahan akan ditampilkan kepada pengguna.

Bisakah kita melakukan gambar menggunakan PHP?

PHP tidak terbatas pada pembuatan keluaran HTML saja. Itu juga dapat digunakan untuk membuat dan memanipulasi file gambar dalam berbagai format gambar yang berbeda, termasuk GIF , PNG , JPEG , WBMP , dan XPM . Lebih nyaman lagi, PHP dapat menampilkan aliran gambar langsung ke browser.

Bagaimana cara menambahkan src gambar di PHP?

Anda dapat memuat konten HTML halaman dengan menggunakan file_get_contents[] pada URL. Setelah Anda mendapatkan HTML untuk tag gambar, Anda kemudian perlu mengambil HTML ini dan mengeluarkan nilai konten di dalam atribut src. Pada artikel ini kita akan menggunakan dua metode tentang bagaimana Anda dapat melakukannya di PHP

Bài mới nhất

Chủ Đề