So laden Sie Videodateien über PHP hoch und speichern sie in geeigneten Ordnern mit Datenbankeintrag
Einführung
Um Video-Uploads auf Ihrer Website effektiv zu verwalten, müssen Sie ein System implementieren, das es Benutzern ermöglicht, Videos hochzuladen, sie in organisierten Ordnern zu speichern und ihre Metadaten in einer Datenbank zu verfolgen. Dieser Leitfaden bietet eine umfassende Lösung, um dies mit PHP und MySQL zu erreichen.
HTML-Formular
Erstellen Sie ein HTML-Formular, mit dem Benutzer Videodateien auswählen und hochladen können:
<code class="html"><form method="post" enctype="multipart/form-data"> <div class="form-group"> <label for="file">Select Video File:</label> <input type="file" name="file" id="file" accept="video/*" required> </div> <div class="form-group"> <label for="course">Course:</label> <select name="course" required> <option value="select">Select Course</option> <option value="java">Java</option> <option value="python">Python</option> <option value="vb">Visual Basic</option> <option value="c">C/C++</option> <option value="ruby">Ruby</option> </select> </div> <input type="submit" name="submit" value="Upload"> </form></code>
PHP-Handler
Jetzt schreiben wir das PHP-Skript, um Datei-Uploads und Datenbankeinträge zu verarbeiten:
<code class="php"><?php // Set destination folder and allowed file extensions define('DESTINATION_FOLDER', 'videos/'); $allowedExtensions = ['mp4', 'webm', 'avi', 'mov']; // Database settings $host = 'localhost'; $database = 'video_database'; $username = 'user'; $password = 'password'; // Connect to database $conn = new mysqli($host, $username, $password, $database); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // Process file upload if (isset($_POST['submit'])) { // Get file details and validate extension $fileName = $_FILES['file']['name']; $fileSize = $_FILES['file']['size']; $fileExtension = pathinfo($fileName, PATHINFO_EXTENSION); if (!in_array($fileExtension, $allowedExtensions)) { echo "Invalid file format. Please upload a valid video file."; exit; } // Check if there are any upload errors if ($_FILES['file']['error'] > 0) { echo "Error uploading file."; exit; } // Move file to destination folder $fileDestination = DESTINATION_FOLDER . $fileName; if (move_uploaded_file($_FILES['file']['tmp_name'], $fileDestination)) { // Insert file details into database $course = $_POST['course']; $uploadDate = date("Y-m-d H:i:s"); $sql = "INSERT INTO video_uploads (video_name, course, upload_date) VALUES ('$fileName', '$course', '$uploadDate')"; if ($conn->query($sql)) { echo "File uploaded successfully. Database entry added."; } else { echo "Error adding database entry."; } } else { echo "Error moving file to destination."; } } $conn->close();</code>
Dieser Code wird automatisch ausgeführt Organisieren Sie Videodateien basierend auf dem ausgewählten Kurs in Unterordnern und fügen Sie einen Datenbankeintrag mit den Dateidetails hinzu.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit Video-Uploads mit Ordnerorganisation und Datenbankeintrag in PHP und MySQL um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!