php - 尝试在 PHP 中上传文件时,如何防止页面重新加载并且什么都不做?
问题描述
我有一个文件夹,其中有一个名为的文件index.php
和另一个名为uploads
. 这是我的index.php
档案...
<?php
if (isset($_POST['submit'])) {
$file = $_FILES['file'];
$fileName = $FILES['file']['name'];
$fileTmpName = $FILES['file']['tmp_name'];
$fileSize = $FILES['file']['size'];
$fileError = $FILES['file']['error'];
$fileType = $FILES['file']['type'];
$fileExt = explode('.', $fileName);
$fileActualExt = strtolower(end($fileExt));
$allowed = array('jpg','jpeg','png',"docx",'pdf','xlsx');
if (in_array($fileActualExt, $allowed)) {
if ($fileError === 0) {
if ($fileSize < 10000001) {
$fileNameNew = uniqid('', true).".".$fileActualExt;
$fileDestination = 'uploads/'.$fileNameNew;
move_uploaded_file($fileTmpName, $fileDestination);
echo "Success";
sleep(3)
header('Location: index.php?uploadsuccess');
} else {
echo "Error, your file is to large.";
sleep(3)
header('Location: home.php');
}
} else {
echo "Error uploading file. Please try again later.";
sleep(3)
header('Location: home.php');
}
} else {
echo "Error, The file type you are trying to upload is invalid.";
sleep(3)
header('Location: home.php');
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form method="post" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit" name="submit">Upload file</button>
</form>
</body>
</html>
这个想法是我可以将图像、word 文档和 excel 文档上传到上传文件夹。但是,每当我单击上传时,它所做的就是重新加载index.php
页面。任何人都可以帮助解决这个问题吗?
解决方案
兄弟好可怜。
我只是尝试复制 pase 和调试错误报告,将分号应用于 sleep(3);无处不在,它会工作
if (!empty($_POST['submit']))
{
$file = $_FILES['file'];
$fileName = $FILES['file']['name'];
$fileTmpName = $FILES['file']['tmp_name'];
$fileSize = $FILES['file']['size'];
$fileError = $FILES['file']['error'];
$fileType = $FILES['file']['type'];
$fileExt = explode('.', $fileName);
$fileActualExt = strtolower(end($fileExt));
$allowed = array('jpg','jpeg','png',"docx",'pdf','xlsx');
if (in_array($fileActualExt, $allowed))
{
if ($fileError === 0)
{
if ($fileSize < 10000001)
{
$fileNameNew = uniqid('', true).".".$fileActualExt;
$fileDestination = 'uploads/'.$fileNameNew;
move_uploaded_file($fileTmpName, $fileDestination);
echo "Success";
sleep(3);
header('Location: index.php?uploadsuccess');
}
else
{
echo "Error, your file is to large.";
sleep(3);
header('Location: home.php');
}
}
else
{
echo "Error uploading file. Please try again later.";
sleep(3);
header('Location: home.php');
}
}
else
{
echo "Error, The file type you are trying to upload is invalid.";
sleep(3);
header('Location: home.php');
}
}
推荐阅读
- webpack - Webpack 合并入口和拆分块
- python - ResNet 需要什么类型的输入?
- python - 无法通过运行 Python 代码将新行附加到保存的数据帧
- vue.js - 如何避免从 CDN 捆绑 Vuetify 和使用?
- sql - SQL条件聚合?
- reactjs - vite react 动态图片 url
- linux - 如何在脚本中向用户询问密码
- html - 在 HTML 模板中的 for 循环中显示图像,其中图像作为类 'sqlalchemy.engine.row.Row'> 传递
- python - 有没有办法将python脚本集成到android studio中的按钮?
- material-ui - 搜索结果链接选项卡