Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để hiển thị hình ảnh từ cơ sở dữ liệu MySQL trong thanh trượt hình ảnh JavaScript?

Đây là một ứng dụng Slideshow-from-PHP rất cơ bản. Nó có thể dễ dàng được sửa đổi hoặc xây dựng. Tên hình ảnh (file_name ) được lấy từ cơ sở dữ liệu, sau đó được đẩy vào một mảng JavaScript gồm các giá trị src hình ảnh. Đảm bảo rằng bạn cũng chỉ định thư mục hình ảnh (nơi hình ảnh thực sự được lưu trữ) để phù hợp với thư mục của riêng bạn. Một trình tải trước hình ảnh đơn giản được bao gồm để tự động phát trình chiếu.

<?php
$conn = new mysqli('localhost', 'root', 'password', 'images')
  or trigger_error('Connection failed.', E_USER_NOTICE);
}
$conn->set_charset('utf8');
$paths = [];
$dir = "./pics"; // images directory (change to suit)

$stmt = $conn->prepare("SELECT `file_name` FROM `images`");
$stmt->execute();
$stmt->bind_result($file);
while ($stmt->fetch()){
  $paths[] = $dir . "/" . $file;
}
?>

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Slideshow from PHP</title>
</head>
<body>
<div>
  <!-- may set first image src in markup so initially visible -->
  <img id="slide" src="./pics/image1.jpg" alt="slideshow">
</div>
<script>
var time = 5000,    // time between images
    i = 0,              // index for changing images
    images = [],    // array of img src from PHP
    preloads = [],      // array of preloaded images
    slide = document.getElementById("slide");

images = <?php echo json_encode($paths); ?>; // from PHP to Js array
var len = images.length;

function changeImg(){
  slide.src = preloads[i].src;
  if (++i > len-1){
    i = 0;
  }
  setTimeout(changeImg, time);
}
function preload(){
  for (var c=0; c<len; c++){
    preloads[c] = new Image;
    preloads[c].src = images[c];
  }
}
window.addEventListener("load", function(){
  preload();
  setTimeout(changeImg, time);
});
</script>
</body>
</html>



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để viết một truy vấn để so sánh ngày hiện tại với dấu thời gian create_at trong cơ sở dữ liệu?

  2. Thiết lập Django với MySQL trên macOS

  3. pdo chèn hình ảnh trực tiếp vào cơ sở dữ liệu - luôn chèn BLOB - 0B

  4. tìm kiếm dữ liệu giữa các ngày được lưu trữ trong varchar trong mysql

  5. JSON so với Mảng được tuần tự hóa trong cơ sở dữ liệu