<?php
error_reporting(E_ALL);
ini_set('display_errors', 'on');
if(isset($_FILES['userfile']){
$file = $_FILES['userfile'];
//proprietà del file
$file_name = $file['name'];
$file_tmp = $file['tmp_name'];
$file_size = $file['size'];
$file_error = $file['error'];
// come gestire il file
$file_ext = explode(".",$file_name);
$file_ext = strtolower(end($file_ext));
$allowed = array("txt", "jpg", "csv");
// controlli vari
if ($file_ext, $allowed){
if($file_error === 0){
if($file_size <= 2097152){
print_r($file_size);
$file_name_new = uniqid("", true) . "." . $file_ext;
$file_destination = "uploads/" . $file_name_new;
if(move_uploaded_file($file_tmp, $file_destination)){
echo $file_destination;
}
}
}
}
}
?>
嗨,问题是当我尝试在上传结束时上传1个文件的任何维度时,显示错误500我认为代码中有错误请问你能否出现此代码的错误?
p.s我已更改此参数:
post_max_size 64M
upload_max_filesize 64M
max_input_time 3000
max_execution_time 3000
但没有任何事情发生
更新: 感谢所有回复尝试运行php -l file-name.php并且我已经纠正了错误但现在当我上传文件后我上传完成后有白屏。
答案 0 :(得分:2)
看起来像语法错误。
更改此行
if ($file_ext, $allowed){
到此:
if (in_array($file_ext, $allowed)) {
我认为它会执行。
答案 1 :(得分:1)
更改
if ($file_ext, $allowed)
到
if (in_array($file_ext, $allowed))
对于其他错误,请尝试运行php -l file-name.php
以向您显示语法可能出错的其他一些内容