Как загрузить файлы и назвать их с типом файла? - PullRequest
0 голосов
/ 02 февраля 2020

Привет, ребята, поэтому я создал веб-сайт, на который вы можете загружать книги и отображать их в виде списка. У меня есть форма для ввода названия книги и типа файла, и я хочу, чтобы они отображались как имя и тип файла ( в той же строке) пример (nameofabook epub), но когда я пытаюсь отобразить их, он отображается как (nameofabook new line epub), вот мой код, спасибо

<?php
if (isset($_FILES['file']) && isset($_POST['name'])) {
    $file = $_FILES['file'];

    $file_name = $file['name'];
    $file_type = $file['type'];
    $file_tmp = $file['tmp_name'];
    $file_size = $file['size'];
    $file_error = $file['error'];

    $file_ext = explode(".", $file_name);
    $file_ext = strtolower(end($file_ext));

    $allowed = array("mov", "avi", "mp4", "epub", "pdf"); //The extensions you allow

    if (in_array($file_ext, $allowed)) {
        if ($file_error === 0) {
            if ($file_size <= 2097152) {    //the maximum filesize
                $file_destination = ''.$file_name;  // If ' ', the file will be placed in this directory
                if (move_uploaded_file($file_tmp, $file_destination)) {
                    echo $file_destination;

                    $fp = fopen('book_list.txt', "a");
                    fwrite($fp, $_POST['name']. "|||" .$file_destination."\n");
                    fwrite($fp, $_POST['type']. "|||" .$file_destination."\n");
                    fclose($fp);

                } else {
                    echo "An error has been encountered while moving your file!";
                }
            } else {
                echo "Your file is too big!";
            }
        } else {
            echo "An error has been encountered while uploading your file!";
        } 
    } else {
        echo "You can't upload files of this type!";
    }
}
?>

, если кому-то интересно, вот мои html для страница загрузки

<!DOCTYPE html>
<html>
    <head>
        <title>Upload a Book</title>
        <link href = "style2.css" type = "text/css" rel = "stylesheet" />
    </head>
    <body>
        <form action="upload.php" method="post" enctype="multipart/form-data">
            Name: <input type="text" name="name" required/> 
            Type: <input type="text" name="type" required/> 
            File: <input type="file" name="file" required/> 
            <input type="submit" value="Upload" />
        </form>
    </body>
</html>

1 Ответ

0 голосов
/ 02 февраля 2020

Во-первых ...
Не загружайте файлы прямо на свой сайт! Вы должны загрузить их с помощью API снаружи в облачное хранилище. В этом случае вы можете использовать Cloudinary . Таким образом, вам не нужно много думать о загруженных файлах. Опять же, вы можете легко их показать!
Не храните информацию, такую ​​как имена и другие (без файла), в текстовом файле. Хранение их в базе данных MySQL - лучший способ сделать это.

Во-вторых ...
Используйте различные входные данные для сбора названий книг и другой информации, чтобы вы могли отображать и изменять их легко.

В-третьих ...
Пожалуйста, дайте код, который вы используете для отображения данных

Я Homo Sapiens Так что я могу напишите что-нибудь не так. Пожалуйста, прости меня за это.

...