首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >脚本不能识别文件扩展名上传pdf在php

脚本不能识别文件扩展名上传pdf在php
EN

Stack Overflow用户
提问于 2019-10-28 08:45:37
回答 1查看 32关注 0票数 0

我试着修改php脚本,让它上传pdf而不是图片。我做了几次修改,但都不起作用。我真的很感谢,如果有人可以告诉我如何修改这个脚本,以允许上传的pdf。我是php的新手,需要更多来自php专家的指导。提前感谢您的帮助。

无论如何,这是代码:

代码语言:javascript
复制
## Heading ##<html>
<head>
<!-- Bootstrap CSS -->
<link rel="stylesheet" 
href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384- 
ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">      

<style>
#uploader {
  width: 300px; 
  height: 200px; 
  background: rgba(0,0,0,.075) url(../../img/pdf_icon.png) repeat fixed left;
  border-radius:8px;
  box-shadow: 5px 5px 10px 0px rgba(0,0,0,0.15);
  display: block;
  padding: 10px;
  }
  #uploader.highlight {
    background:#ff0;
  }
  #uploader.disabled {
    background:#aaa;
  }
  </style>

  <script src="drag-drop-upload-pdf.js"></script>
  </head>
  <body>
  <!-- DROP ZONE -->
  <div id="uploader">
  Muatnaik fail pdf di sini...
  </div>

  <!-- STATUS -->
  <div id="upstat"></div>

  <!-- FALLBACK -->
  <form action="upload-pdf.php" method="post" enctype="multipart/form-data">
    <br />
  <input class="btn btn-primary" type="file" name="file-upload" id="file-upload" accept="pdf/*">
    <br />
    <br />
  <input class="btn btn-primary" type="submit" value="Upload File" name="submit">
  </form>
  </body>
  </html>


## PHP Script ##
<?php
// SOURCE + DESTINATION
$source = $_FILES["file-upload"]["tmp_name"];
$destination = __DIR__.'/../../download/'. $_FILES["file-upload"]["name"];
echo "Uploaded ";
$error = "";

// CHECK IF FILE ALREADY EXIST
if (file_exists($destination)) {
$error = $destination . " already exist.";
}

// ALLOWED FILE EXTENSIONS
if ($error == "") {
$allowed = ["application/pdf", "application/x-pdf", "application/acrobat", "applications/vnd.pdf", 
"text/pdf". "text/x-pdf"];
$ext = strtolower(pathinfo($_FILES["file-upload"]["name"], PATHINFO_EXTENSION));
if (!in_array($ext, $allowed)) {
$error = "$ext file type not allowed. File must be uploaded in PDF format. - " . $_FILES["file- 
upload"]["name"];
  }
}

// LEGIT TEXT FILE CHECK
if ($error == "") {
if (getimagesize($_FILES["file-upload"]["tmp_name"]) == false) {
$error = $_FILES["file-upload"]["name"] . " is not a valid file.";
  }
}

// FILE SIZE CHECK
if ($error == "") {
// 1,000,000 = 1MB
if ($_FILES["file-upload"]["size"] > 50000000) {
$error = $_FILES["file-upload"]["name"] . " - file size too big!";
  }
}

// ALL CHECKS OK - MOVE FILE
if ($error == "") {
if (!move_uploaded_file($source, $destination)) {
$error = "Error moving $source to $destination";
  }
}

// ERROR OCCURED OR OK?
if ($error == "") {
echo $_FILES["file-upload"]["name"] . " Upload DONE.";
} else {
echo $error;
}
?>
EN

回答 1

Stack Overflow用户

发布于 2019-10-28 10:20:38

尝试在HTML中更改以下内容:

accept="application/pdf"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58584631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档