Rumah  >  Artikel  >  pangkalan data  >  MySQL mencipta jadual gambar untuk melaksanakan muat naik gambar dan fungsi pengurusan

MySQL mencipta jadual gambar untuk melaksanakan muat naik gambar dan fungsi pengurusan

WBOY
WBOYasal
2023-07-03 08:51:101688semak imbas

MySQL mencipta jadual gambar untuk melaksanakan muat naik gambar dan fungsi pengurusan

Dalam banyak aplikasi web, muat naik gambar dan fungsi pengurusan adalah salah satu keperluan yang sangat biasa. Pangkalan data MySQL ialah pangkalan data hubungan yang biasa digunakan yang boleh digunakan untuk menyimpan dan mengurus pelbagai jenis data, termasuk imej.

Artikel ini akan memperkenalkan cara menggunakan MySQL untuk mencipta jadual imej dan menggunakan jadual ini untuk melaksanakan muat naik imej dan fungsi pengurusan. Pada masa yang sama, beberapa kod contoh juga akan disediakan supaya pembaca dapat memahami dan mengamalkan dengan lebih baik.

  1. Buat jadual imej

Mula-mula, log masuk ke pangkalan data MySQL dan cipta pangkalan data bernama imej. Seterusnya, buat jadual yang dipanggil imej dengan lajur berikut: images 的数据库。接下来,创建一个名为 images 的表,包含以下列:

  • id:图片的唯一标识符,使用自增整数类型。
  • name:图片的名称,使用字符串类型。
  • file:图片的文件名,使用字符串类型。
  • size:图片的文件大小,使用整数类型。
  • type:图片的文件类型,使用字符串类型。
  • created_at:图片的创建时间,使用日期时间类型。

下面是具体的创建表的 SQL 语句:

CREATE TABLE `images` (
  `id` INT AUTO_INCREMENT PRIMARY KEY,
  `name` VARCHAR(100) NOT NULL,
  `file` VARCHAR(100) NOT NULL,
  `size` INT NOT NULL,
  `type` VARCHAR(100) NOT NULL,
  `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP
);
  1. 图片上传功能

接下来,编写一个图片上传的 PHP 脚本,用于将用户上传的图片保存到服务器,并将相关信息插入到数据库中。

首先,创建一个 HTML 表单,用于接受用户选择的图片文件:

<form action="upload.php" method="post" enctype="multipart/form-data">
  <input type="file" name="image" />
  <input type="submit" value="Upload" />
</form>

然后,编写 upload.php 脚本,处理图片上传的逻辑:

<?php
// 检查是否有文件上传
if(isset($_FILES['image'])) {
  // 获取上传的文件信息
  $file = $_FILES['image'];
  $name = $file['name'];
  $tmp_name = $file['tmp_name'];
  $size = $file['size'];
  $type = $file['type'];
  
  // 将文件保存到服务器的指定目录
  $upload_path = 'uploads/';
  $new_name = uniqid() . '_' . $name;
  $destination = $upload_path . $new_name;
  move_uploaded_file($tmp_name, $destination);
  
  // 将文件信息插入到数据库
  $db = new mysqli('localhost', 'root', 'password', 'images');
  $sql = "INSERT INTO images (name, file, size, type) VALUES ('$name', '$new_name', $size, '$type')";
  $db->query($sql);
  $db->close();
  
  echo 'File uploaded successfully!';
}
?>

以上代码将会将用户上传的图片保存到 uploads/ 目录下,并同时将图片的相关信息插入到数据库的 images 表中。

  1. 图片管理功能

最后,我们还可以提供一些简单的图片管理功能,例如显示所有已上传的图片、删除特定图片等。

以下是一个简单的图片显示脚本 images.php,用于显示所有已上传的图片:

<?php
$db = new mysqli('localhost', 'root', 'password', 'images');
$sql = "SELECT * FROM images";
$result = $db->query($sql);

while($row = $result->fetch_assoc()) {
  echo '<img src="uploads/' . $row['file'] . '" alt="' . $row['name'] . '" />';
}

$db->close();
?>

以上代码将会依次输出每个已上传图片的 a1f02c36ba31691bcfe87b2722de723b

    id: Pengecam unik untuk imej, menggunakan jenis integer kenaikan automatik.

    nama: Nama imej, menggunakan jenis rentetan.

    fail: Nama fail imej, menggunakan jenis rentetan.

    saiz: Saiz fail imej, menggunakan jenis integer.

    jenis: Jenis fail imej, menggunakan jenis rentetan. 🎜🎜created_at: Masa penciptaan imej, menggunakan jenis tarikh dan masa. 🎜
🎜Berikut ialah pernyataan SQL khusus untuk membuat jadual: 🎜rrreee
    🎜Fungsi muat naik imej🎜🎜🎜Seterusnya, tulis skrip PHP untuk muat naik imej untuk memuat naik imej daripada pengguna Gambar disimpan ke pelayan dan maklumat yang berkaitan dimasukkan ke dalam pangkalan data. 🎜🎜Mula-mula, buat borang HTML untuk menerima fail imej yang dipilih oleh pengguna: 🎜rrreee🎜Kemudian, tulis skrip upload.php untuk mengendalikan logik muat naik imej: 🎜rrreee🎜Kod di atas akan Gambar yang dimuat naik oleh pengguna disimpan dalam direktori uploads/, dan maklumat berkaitan gambar dimasukkan ke dalam jadual images pangkalan data. 🎜
      🎜Fungsi pengurusan gambar🎜🎜🎜Akhir sekali, kami juga boleh menyediakan beberapa fungsi pengurusan gambar yang mudah, seperti memaparkan semua gambar yang dimuat naik, memadam gambar tertentu, dsb. 🎜🎜Berikut ialah skrip paparan imej ringkas images.php, digunakan untuk memaparkan semua imej yang dimuat naik: 🎜rrreee🎜Kod di atas akan mengeluarkan < ; tag untuk memaparkan semua imej pada halaman web. 🎜🎜Bagi fungsi memadam gambar, anda boleh mereka bentuk logik yang sepadan mengikut keperluan sebenar dan menulis skrip PHP yang sepadan untuk melaksanakannya. 🎜🎜Ringkasan🎜🎜Artikel ini memperkenalkan cara menggunakan MySQL untuk mencipta jadual imej, dan menggunakan jadual ini untuk melaksanakan muat naik imej dan fungsi pengurusan. Pada masa yang sama, beberapa kod sampel disediakan untuk membantu pembaca memahami dan mengamalkan dengan lebih baik. 🎜🎜Dengan menyimpan maklumat berkaitan imej dalam pangkalan data, kami boleh mengurus dan mengendalikan data imej dengan lebih mudah, bukannya hanya terhad kepada sistem fail. Sudah tentu, senario dan keperluan aplikasi tertentu mungkin berbeza-beza, dan pembaca boleh menyesuaikan dan mengembangkan secara fleksibel mengikut keadaan sebenar. 🎜

Atas ialah kandungan terperinci MySQL mencipta jadual gambar untuk melaksanakan muat naik gambar dan fungsi pengurusan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn