>  기사  >  백엔드 개발  >  PHP에서 비디오 파일을 업로드하고 데이터베이스 통합으로 분류하는 방법은 무엇입니까?

PHP에서 비디오 파일을 업로드하고 데이터베이스 통합으로 분류하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-21 14:34:30762검색

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

PHP를 통해 비디오 파일을 업로드하고 데이터베이스 항목을 사용하여 적절한 폴더에 저장하는 방법

문제:

사용자는 비디오 파일을 웹사이트에 업로드하고 사용자 식별을 위해 해당 데이터베이스 항목과 함께 지정된 폴더에 저장할 수 있어야 합니다.

해결책:

HTML 양식

사용자가 업로드할 비디오 파일을 선택하는 HTML 양식을 정의합니다. 양식에 파일 선택 및 제출을 위한 적절한 속성이 포함되어 있는지 확인하세요.

<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 처리기

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>

추가 기능

사용자의 이름과 이메일 주소를 허용하는 기능을 추가하려면 그에 따라 HTML 양식과 PHP 처리기를 수정하세요.

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>

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>

위 내용은 PHP에서 비디오 파일을 업로드하고 데이터베이스 통합으로 분류하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.