MySQL是一種流行的關系型數據庫管理系統,被廣泛應用于Web應用程序和其他數據驅動的應用程序中。它可以通過SQL查詢語言來存儲和檢索數據,從而允許開發人員輕松管理大量數據。
// MySQL數據庫連接示例 $conn = mysqli_connect($servername, $username, $password, $dbname); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } // 從數據庫中檢索數據示例 $sql = "SELECT * FROM users WHERE user_id = 1"; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) >0) { while($row = mysqli_fetch_assoc($result)) { echo "Username: " . $row["username"] . " Email: " . $row["email"]; } } else { echo "0 results"; }
在Web應用程序中,文件上傳和下載是常見的功能。它們使用戶可以上傳文件,如圖像、文本文件和音頻文件,并從服務器下載它們。對于這些功能,MySQL可以用來存儲和管理上傳的文件的相關信息,例如文件名、文件類型和文件路徑。
// 文件上傳示例 $target_dir = "uploads/"; $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) { $filename = basename($_FILES["fileToUpload"]["name"]); $filetype = pathinfo($target_file,PATHINFO_EXTENSION); $filesize = $_FILES["fileToUpload"]["size"]; $sql = "INSERT INTO files (filename, filetype, filesize, filepath) VALUES ('$filename', '$filetype', '$filesize', '$target_file')"; if (mysqli_query($conn, $sql)) { echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded."; } else { echo "Error uploading file: " . mysqli_error($conn); } } else { echo "Error uploading file."; } // 文件下載示例 $fileid = $_GET['id']; $sql = "SELECT * FROM files WHERE file_id = '$fileid'"; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) >0) { $row = mysqli_fetch_assoc($result); $file = $row['filepath']; header('Content-Type: application/octet-stream'); header("Content-Transfer-Encoding: Binary"); header("Content-disposition: attachment; filename=\"" . basename($file) . "\""); readfile($file); } else { echo "File not found"; }
總之,MySQL是一個強大的數據庫管理系統,適用于許多數據驅動的應用程序。文件上傳和下載是常見的Web應用程序功能,應該合理地使用MySQL來管理上傳的文件。