#1 Le 18/03/2008, à 21:19
- Shinigami Delroën
PHP n'applique pas les modifications effectuées dans php.ini
Bonjour,
Je viens de modifier la constante "upload_tmp_dir" dans php.ini, j'ai fait une apache2 restart, mais les fichiers ne vont toujours pas au bon endroit !
Voila ce que me dit phpinfo() :
upload_tmp_dir
Local value : /home/moi/public_html/tmp/
Master value : /home/moi/public_html/tmp/
C'est bien la valeur que j'ai demandée dans php.ini.
Pourtant voila ce que me fait mon script d'upload :
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpeJEBiD' to 'images/test.jpg'
Sauriez-vous me dire comment cela se fait et surtout comment résoudre ce problème ?
Merci !
Dernière modification par Shinigami Delroën (Le 19/03/2008, à 13:46)
Hors ligne
#2 Le 19/03/2008, à 01:11
- Shinigami Delroën
Re : PHP n'applique pas les modifications effectuées dans php.ini
Voila le script que j'utilise pour l'uplad :
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
move_uploaded_file($_FILES["file"]["tmp_name"],"images/test.jpg");
?>
Il ne laisse pas passer les fichiers en erreur.
Voila ce que l'affichage me donne :
Upload: Beleriand.jpg
Type: image/jpeg
Size: 96.68359375 Kb
Stored in: /tmp/phpGBpcaP
Warning: move_uploaded_file(images/test.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in /home/shinigami/public_html/noellefaubry/test2.php on line 14
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpGBpcaP' to 'images/test.jpg' in /home/shinigami/public_html/***/test2.php on line 14
De plus, je sais pour plusieurs raisons que la taille n'est pas trop grande :
- ce genre d'erreur est signalé par un code non nul dans $_FILES['file']['error']
- le fichier a été uploadé (existe dans /tmp/php...)
- dans php.ini, j'ai augmenté upload_max_filesize de 2M à 4M
- toujours dans php.ini, j'ai augmenté post_max_size de 8M à 20M
- dans mon formulaire, j'ai passé MAX_FILE_SIZE à 4M (4194304)
Ceci étant dit, ces considérations n'ont rien à voir avec le problème qui est que PHP n'utilise pas le répertoire temporaire qu'il déclare utiliser (à ma demande).
Dernière modification par Shinigami Delroën (Le 19/03/2008, à 13:47)
Hors ligne