上传PHP:文件大小问题

时间:2013-07-05 01:01:45

标签: php upload

我在Apache2上使用PHP测试我的网站上传,但是我遇到了一些问题: 我可以上传40k文件,但不能超过100K move_uploaded_file发送给我假。 虽然我设置我的php.ini接受500Mo文件进行测试。 我还把它放在脚本的末尾:

set_time_limit(0);
ini_set('upload_max_filesize', '500M');
ini_set('post_max_size', '500M');
ini_set('max_input_time', 4000);
ini_set('max_execution_time', 4000); 

这是我的代码:

<?php
set_time_limit(0);
ini_set('upload_max_filesize', '500M');
ini_set('post_max_size', '500M');
ini_set('max_input_time', 4000);
ini_set('max_execution_time', 4000);

$dossier = $_SERVER['DOCUMENT_ROOT'].'/upload/';
$fichier = basename($_FILES['avatar']['name']);
$taille_maxi = 100000000;
$taille = filesize($_FILES['avatar']['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['avatar']['name'], '.'); 

if(!in_array($extension, $extensions))
{
     $erreur = 'WRONG EXTENSION';
}
if($taille>$taille_maxi)
{
     $erreur = 'TOO HEAVY';
}


if(!isset($erreur))
{
     $fichier = strtr($fichier, 
          'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
          'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
     $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
     if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier))
     {
          echo 'Upload OK !';
     }
     else
     {
          echo 'Upload Error';

     }
}
else
{
     echo $erreur;
}
?>

我总是得到答案'上传错误'没有任何PHP错误:

     if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier))
     {
          echo 'Upload OK !';
     }
     else
     {
          echo 'Upload Error';

     }

提前感谢您的帮助! 祝你有愉快的一天。

0 个答案:

没有答案