(我知道sql注入只是一个测试文件,稍后将解决该问题。)
我正在一个允许用户发布内容的网站上。他们可以选择上传照片或视频。我有一个if语句,用于检查文件扩展名是否与允许的扩展名数组匹配,然后再将其发布到特定文件夹中。唯一的问题是if语句检测到包含变量的某种问题。有没有人可以提供解释或理论帮助?
我在该网站上搜索了所有具有相似标题的内容,但没有发现能真正解决我的特定问题的信息。
这是返回false的特定if语句。
if (in_array($fileActualExt, $allowed)) {
我相信这是所有相关的代码,如果您需要除此以外的其他信息,请告诉我。
<?php
function setUploads($conn) {
if (isset($_POST['uploadSubmit'])) {
$file = $_FILES['file'];
$fileName = $file['name'];
$fileTmpName = $file['tmp_name'];
$fileSize = $file['size'];
$fileError = $file['error'];
$fileType = $file['type'];
$fileExt = explode('.', $fileName);
$fileActualExt = strtolower(end($fileExt));
$allowed = array('jpg', 'jpeg', 'png', 'pdf', 'gif', 'mp4', 'mov', 'avi', 'mpeg4');
$pictureExt = array('jpg', 'jpeg', 'png', 'gif');
$videoExt = array('mp4', 'mov', 'avi', 'mpeg4');
if (in_array($fileActualExt, $allowed)) {
if ($fileError === 0) {
if ($fileSize < 5000000) { }
else {
$fileid = 0;
// I removed irrelevant code here
}
}
else {
header("Location: index.php?error1");
exit();
}
}
else {
header("Location: index.php?error2");
exit();
}
}
else {
header("Location: index.php?error3");
exit();
}
?>
答案 0 :(得分:0)
检查$ _FILES ['file']是否为空。
答案 1 :(得分:0)
您无法将此$ _FILES ['file']传递给函数并将其存储在名为$ imgs之类的东西中,并不能使用它:
printVecInfo <- function(x) {
cat(sprintf("Mean of x: %f\n", mean(x)))
cat(sprintf("Median of x: %f\n", median(x)))
return(list(mean = mean(x), median = median(x)))
}
printVecInfo(1:5)
#Mean of x: 3.000000
#Median of x: 3.000000
#$mean
#[1] 3
#
#$median
#[1] 3
打来电话
$imgs = $_FILES['file'];