【问题标题】:Using a file page with html and php使用带有 html 和 php 的文件页面
【发布时间】:2020-11-11 02:19:56
【问题描述】:

我正在尝试让我的网站允许人们上传文件。我不知道我在做什么,并尝试在谷歌上搜索我能想到的所有内容。我想限制他们可以作为文件放入的内容以及最大文件大小。我还在 HTML 代码之外使用我的 PHP 代码。所以我能得到的任何建议都会很棒。我还尝试遵循有关如何制作文件页面的教程,它希望我使用 mamp(我以前从未使用过)。有人可以帮帮我吗?

这是我的 PHP 代码:

<?php

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    if (isset($_FILES['files'])) {
        $errors = [];
        $path = 'C:/Users/keena/Desktop/Website/uploads/';
        $extensions = ['pdf', 'txt', 'doc', 'docx'];
    $all_files = count($_FILES['files']['tmp_name']);

    for ($i = 0; $i < $all_files; $i++) {
        $file_name = $_FILES['files']['name'][$i];
        $file_tmp = $_FILES['files']['tmp_name'][$i];
        $file_type = $_FILES['files']['type'][$i];
        $file_size = $_FILES['files']['size'][$i];
        $file_ext = strtolower(end(explode('.', $_FILES['files']['name'][$i])));

        $file = $path . $file_name;

        if (!in_array($file_ext, $extensions)) {
            $errors[] = 'Extension not allowed: ' . $file_name . ' ' . $file_type;
        }

        if ($file_size > 2097152) {
            $errors[] = 'File size exceeds limit: ' . $file_name . ' ' . $file_type;
        }

        if (empty($errors)) {
            move_uploaded_file($file_tmp, $file);
        }
    }

    if ($errors) print_r($errors);
}
}

这是我的 HTML 代码:

<!DOCTYPE html>
<head>

    <php include "process.php"; ?>
    <script src="script/file.js" defer></script>
    <link rel="stylesheet" href="css/efm.css">
    <title>Education For Ministry</title>
    <meta name="author" content="Keenan J. Norris">
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

</head>

<body>

    <a href="index.html">
    <img src="pics/efm-logo.jpg" alt="Education for ministries logo" width="device-width, initial-scale=1.0" height="device-height, initial-scale=1.0"></a>

    <div class="dropdown">
        <button onclick="myFunction()" class="dropbtn">Menu</button>
        <div id="myDropdown" class="dropdown-content">
        <a href="index.html">Home</a>
        <a href="event.html">Events</a>
        <a href="about.html">About</a>
        <a href="login.html">Login</a>
        <a href="enrol.html">Enrollment & Fees</a>
        <a href="resource.html">Resources for Participants</a>
        <a href="contact.html">Contact Us</a>
        <a href="file.html">Files</a>
        </div>
    </div>

    <p>This is for members only.  Please upload pdf, txt, doc, or a docx files.  Files should be no bigger than 2mb.</p>

    <form method="post" enctype="multipart/form-data">
        <input type="file" name="files[]" multiple />
        <input type="submit" value="uploads" name="submit" />
    </form>
</body>

附:同样,我是全新的,不知道自己在做什么。

【问题讨论】:

    标签: php html file


    【解决方案1】:

    您可以使用https://www.dropzonejs.com/来实现您的文件上传。他们有关于如何使用它的完整文档,而且它是免费的。

    【讨论】:

    • 我会使用它,但它是用于学校项目,我认为我们不能使用外部网站。我和我的职业教练会面。我会问她,看看她说什么。
    • 要在本地机器上设置 PHP,您可以按照以下链接中的视频进行操作:youtube.com/watch?v=TjFRTkw6GDQ
    【解决方案2】:

    如果您想使用 PHP 代码,如果您使用 Windows 或其他替代方案,则必须使用 XAMPP 设置服务器环境。

    XAMPP安装教程:https://www.youtube.com/watch?v=-f8N4FEQWyY

    【讨论】:

      猜你喜欢
      • 2011-06-08
      • 2015-01-09
      • 1970-01-01
      • 2023-03-19
      • 2016-04-17
      相关资源
      最近更新 更多