上传完成后 php 中的错误 500
error 500 in php when upload is complete
<?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 的回复,我已经更正了错误,但是现在当我上传文件时,上传完成后出现白屏。
看起来像是语法错误。
更改此行
if ($file_ext, $allowed){
对此:
if (in_array($file_ext, $allowed)) {
我想它会执行。
改变
if ($file_ext, $allowed)
到
if (in_array($file_ext, $allowed))
对于其他错误,请尝试 运行 php -l file-name.php
向您展示一些语法可能有误的其他内容
<?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 的回复,我已经更正了错误,但是现在当我上传文件时,上传完成后出现白屏。
看起来像是语法错误。
更改此行
if ($file_ext, $allowed){
对此:
if (in_array($file_ext, $allowed)) {
我想它会执行。
改变
if ($file_ext, $allowed)
到
if (in_array($file_ext, $allowed))
对于其他错误,请尝试 运行 php -l file-name.php
向您展示一些语法可能有误的其他内容