Heim  >  Artikel  >  Backend-Entwicklung  >  Wie lade ich Videodateien in PHP hoch und kategorisiere sie mit Datenbankintegration?

Wie lade ich Videodateien in PHP hoch und kategorisiere sie mit Datenbankintegration?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-21 14:34:30764Durchsuche

How to Upload Video Files in PHP and Categorize Them with Database Integration?

So laden Sie Videodateien über PHP hoch und speichern sie in einem geeigneten Ordner mit einem Datenbankeintrag

Problem:

Benutzer benötigen die Möglichkeit, Videodateien auf eine Website hochzuladen und sie in bestimmten Ordnern mit entsprechenden Datenbankeinträgen zur Benutzeridentifizierung zu speichern.

Lösung:

HTML-Formular

Definieren Sie das HTML-Formular, in dem Benutzer die Videodatei zum Hochladen auswählen. Stellen Sie sicher, dass das Formular geeignete Attribute für die Dateiauswahl und -übermittlung enthält.

<code class="html"><form method="post" enctype="multipart/form-data">
    <input type="file" accept="video/*" ID="fileSelect" name="filename">
    <select name="course">
        <option value="select" selected>Select</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>
    <input type="submit" value="Upload" name="submit">
</form></code>

PHP-Handler

Verarbeiten Sie die hochgeladene Videodatei mit PHP:

<code class="php">// Define destination folder based on selected course
$folder  = isset($_POST["course"]);

// Destination folder path
$destination_folder = '/' . $folder;

// Maximum file size (in bytes)
$max_file_size = 0;

// Success URL for redirection after upload
$success_url = 'learn.learnbrix.com';

// Upload success log database connection details (optional)
define('DB_HOST',''); // host, usually localhost
define('DB_DATABASE',''); // database name
define('DB_USERNAME',''); // username
define('DB_PASSWORD',''); // password

// Check for upload errors
$error_code = $_FILES['filename']['error'];
if ($error_code !== UPLOAD_ERR_OK) {
    // Handle upload errors as needed
}

// Process the uploaded file
$filename = $_FILES['filename']['name'];
$tmp_filename = $_FILES['filename']['tmp_name'];
$file_ext = strtolower(pathinfo($filename, PATHINFO_EXTENSION));
$filesize = filesize($tmp_filename);

// Check file size and type
if ($filesize > $max_file_size) {
    // Handle file size error
}
if (!in_array($file_ext, array('mp4', 'avi', 'mov'))) {
    // Handle file type error
}

// Save the file in the destination folder
$dest_filename = md5(uniqid(rand(), true)) . '.' . $file_ext;
move_uploaded_file($tmp_filename, $destination_folder . '/' . $dest_filename);

// Log the upload (optional)
if (DO_LOG) {
    // Connect to the database and execute the query to log the upload
}

// Redirect to the success URL
header('Location: ' . $success_url);</code>

Zusätzliche Funktionen

Um die Möglichkeit hinzuzufügen, Namen und E-Mail-Adressen von Benutzern zu akzeptieren, ändern Sie das HTML-Formular und den PHP-Handler entsprechend:

HTML-Formular

<code class="html"><form method="post" enctype="multipart/form-data">
    <label for="name">Name:</label>
    <input type="text" name="name">

    <label for="email">Email:</label>
    <input type="email" name="email">

    <input type="file" accept="video/*" ID="fileSelect" name="filename">
    <select name="course">
        <option value="select" selected>Select</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>
    <input type="submit" value="Upload" name="submit">
</form></code>

PHP-Handler

<code class="php">// Get the user's name and email from the form
$name = $_POST['name'];
$email = $_POST['email'];

// Use $name and $email to create a database entry or perform any other necessary action</code>

Das obige ist der detaillierte Inhalt vonWie lade ich Videodateien in PHP hoch und kategorisiere sie mit Datenbankintegration?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn