Comment télécharger des fichiers vidéo via PHP et les enregistrer dans un dossier approprié avec une entrée de base de données
Problème :
Les utilisateurs doivent pouvoir télécharger des fichiers vidéo sur un site Web et les stocker dans des dossiers désignés avec les entrées de base de données correspondantes pour l'identification de l'utilisateur.
Solution :
Formulaire HTML
Définissez le formulaire HTML dans lequel les utilisateurs sélectionnent le fichier vidéo à télécharger. Assurez-vous que le formulaire inclut les attributs appropriés pour la sélection et la soumission des fichiers.
<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>
Gestionnaire PHP
Traitez le fichier vidéo téléchargé à l'aide de 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>
Fonctionnalités supplémentaires
Pour ajouter la possibilité d'accepter les noms et adresses e-mail des utilisateurs, modifiez le formulaire HTML et le gestionnaire PHP en conséquence :
Formulaire HTML
<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>
Gestionnaire PHP
<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>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!