2017-03-05 7 views
0

私は約500日間、この500エラーが発生していることを理解しようとしています。私がファイルイメージを投稿しようとするたびにエラーが表示されます:POST http://example.com/server/uploadProfile.php 500(内部サーバーエラー)500 PHPアップロードスクリプトからのエラー

意味と実行方法については正確には分かりません。

<?php 

error_reporting(E_ALL); 
ini_set("display_errors", 1); 

function image_upload($max_size,$input_file,$path,$new_width) { 
if(!define("MAX_SIZE",$max_size)) { 
    define("MAX_SIZE",$max_size); 
} 

    $errors = 0; 



    if($_SERVER['REQUEST_METHOD'] == 'POST') { 

    $img = $_FILES[$input_file]['name']; 
    $tmp_file = $_FILES[$input_file]['tmp_name']; 

    } 

    if($img) { 

     $file_name = stripcslashes($_FILES[$input_file]['name']); 
     $extension = getExtension($file_name); 
     $extension = strtolower($extension); 


     if($extension != 'jpg' && $extension != 'jpeg' && $extension != 'png' && $extension != 'gif') { 
      //echo "Unknown image type."; 
      $errors = 1; 
      return "Wrong file type."; 
     } 
     else { 
      $size = filesize($_FILES[$input_file]['tmp_name']); 

      if($size > MAX_SIZE*1024) { 
       $error = 1; 
       return "File size too big"; 
       //echo "You have exceeded the size limit"; 
      } 

      if($extension == 'jpg' || $extension == 'jpeg') { 
       $uploadedfile = $_FILES[$input_file]['tmp_name']; 

       $src = imagecreatefromjpeg($uploadedfile); 
      } 
      else if($extension == 'png') { 
       $uploadedfile = $_FILES[$input_file]['tmp_name']; 
       $src = imagecreatefrompng($uploadedfile); 
      } 
      else if($extension == 'gif') { 
       $uploadedfile = $_FILES[$input_file]['tmp_name']; 
       $src = imagecreatefromgif($uploadedfile); 
      } 



      list($width,$height)=getimagesize($uploadedfile); 


      $newheight = ($height/$width)*$new_width; 


      $tmp = imagecreatetruecolor($new_width,$newheight); 


        imagecopyresampled($tmp,$src,0,0,0,0,$new_width,$newheight,$width,$height); 

      $rnd = rand(0,9999999999999999999999); 

      $file_name = $rnd.'_'.$_FILES[$input_file]['name']; 

      $upload_path = $path .$rnd.'_'.$_FILES[$input_file]['name'] 



      switch($_FILES[$input_file]['type']) { 
       case 'image/jpeg': 

         imagejpeg($tmp, $upload_path, 100); 


       break; 
       case 'image/jpg' : 

        imagejpeg($tmp, $upload_path, 100); 



       break; 
       case 'image/png': 

         imagepng($tmp, $upload_path, 0); 


       break; 
       case 'image/gif' : 

         imagegif($tmp, $upload_path); 
       break; 

      } 



     } 

    } 


} 

    function getExtension($str) { 

    $i = strrpos($str,"."); 
    if (!$i) { return ""; } 
    $l = strlen($str) - $i; 
    $ext = substr($str,$i+1,$l); 
    return $ext; 
    } 

    if(isset($_FILES['profilePhoto']['tmp_name'])) { 

    image_upload("320000","profilePhoto","/profile",250); 

    } 



?> 
+0

Apacheエラーログに回答があります。それを確認するか、ここに少なくともあなたが見ることができるエラーを貼り付けてください。あなたがそれを見つけることができる場所についてのGoogle。 –

答えて

1
$upload_path = $path .$rnd.'_'.$_FILES[$input_file]['name'] 

あなたは欠けています。ラインの終わりに。スクリプトをコンパイルできないようにする構文エラーにより、サーバーエラー500

+0

本当に...笑それもすべてだった。ありがとう。どのように私はそれを逃し続けたかわからない。再度、感謝します! –

関連する問題