【问题标题】:error 500 in php when upload is complete上传完成时php中的错误500
【发布时间】:2016-03-03 11:43:42
【问题描述】:
<?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 并且我已经纠正了错误,但是现在当我上传文件时,上传完成后我有白屏。

【问题讨论】:

  • 查看php错误日志
  • 一些错误:if(isset($_FILES['userfile']){; if ($file_ext, $allowed)

标签: php file-upload upload internal-server-error php-5.5


【解决方案1】:

看起来像是语法错误。

改变这一行

if ($file_ext, $allowed){

到这里:

if (in_array($file_ext, $allowed)) {

我认为它会执行。

【讨论】:

    【解决方案2】:

    改变

    if ($file_ext, $allowed)
    

    if (in_array($file_ext, $allowed))
    

    对于其他错误,请尝试运行 php -l file-name.php 以向您显示其他一些可能与语法错误的内容

    【讨论】:

    • 感谢您尝试运行 php -l file-name.php 的回复,我已更正错误,但现在当我上传文件时,上传完成后出现白屏。
    • 是的,这是因为在该脚本中您没有任何内容可以打印到屏幕上。但是,如果您检查文件系统中的必要位置,您应该会看到上传的文件。尝试echo某事或重定向到另一个页面。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多