我在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';
}
提前感谢您的帮助! 祝你有愉快的一天。