Permission denied - move_uploaded_file [Résolu/Fermé]

Signaler
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
-
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
-
Bonjour,
je fais un transfère d'images et j'ai un problème de permission mais ne sais ou.

Voici mes 3 messages

Notice: Use of undefined constant DOCUMENT_ROOT - assumed 'DOCUMENT_ROOT' in /var/www/html/include/fonction.php on line 343


Warning: move_uploaded_file(/var/www/html/img/reception/Letrancheur_20160529000324.jpg): failed to open stream: Permission denied in /var/www/html/include/fonction.php on line 343


Warning: move_uploaded_file(): Unable to move '/tmp/phpayDR6X' to '/var/www/html/img/reception/Letrancheur_20160529000324.jpg' in /var/www/html/include/fonction.php on line 343

Mon arborésance est celle-ci

.
└── var
├── tmp
└── www
└── html
├── img
│ └── reception
└── include
└── fonction.php


drwxr-xr-x root root var
drwxrwxrwt root root tmp
drwxr-xr-x root root www
drwxr-xr-x root root html
drwxr-xr-x root root img
drwxr-xr-x root root reception
drwxr-xr-x root root include
-rw-r--r-- root root fonction.php

Voici la ligne 343
$test=move_uploaded_file($fichier['tmp_name'],$_SERVER[DOCUMENT_ROOT].'/img/reception/'.$nouveau_nom);


Une idée?
Merci d'avance

4 réponses

Messages postés
31203
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 janvier 2021
3 212
Oubli le tmp .. j'avais lu en diagonale.

Par contre, le chemin vers lequel le script essaye d'uploader l'image semble correct:

/var/www/html/img/reception/Pyton_20160529013621.jpg

Dans ce cas, essayes ( juste pour voir...) de mettre les droits en 777 sur les répertoires html et img (via un chmod 777 )

Sinon, faudrait mettre le user www-data propriétaire sur ton arboresence. (via un petit chown -R )
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
je viens de mettre www html et img en 777 et cela fonctionne du coup comment dois-je mettre les dossiers pour rendre cela tout de même protégé?
Parceque j'avais lu que pour les dossier il était conseillé de mettre les dossiers en 755
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
C'est super étrange car je viens de les remettres en 755 et cela continue de fonctionner bisare
Messages postés
31203
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 janvier 2021
3 212
Et comme je te l'avais également proposé ... tu peux changer le owner du dossier.
A la place de root ... mettre www-data (c'est le user utilisé par apache normalement)
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
a voila autant pour moi j'ai coché par erreur un case qui a mis tout les sous-dossiers en 777 du coup je viens de remettre réception en 755 et cela ne passe plus donc c'est le réception que je dois protéger une idée?
Messages postés
14763
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
25 janvier 2021
276
Déjà tu as oublié les quotes sur :
$_SERVER[DOCUMENT_ROOT]
à changer en :
$_SERVER['DOCUMENT_ROOT']

Et vérifie aussi si le dossier de destination est ouvert en écriture pour tout le monde.
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
effectivement désolé j'ai oublié de les mettre
drwxr-xr-x root root  img
drwxr-xr-x root root reception
Messages postés
31203
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 janvier 2021
3 212
Bonjour,

Tu as oublié des quotes....
$_SERVER[DOCUMENT_ROOT]

A changer par :
$_SERVER['DOCUMENT_ROOT']

Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
effectivement, je les avaient retirés lorsque j'avais fais un echo de tout cela mais même avec ca ne change rien car la premiere ligne dis qu'il interprete cela pour le changer :)
tout de même une notif en moin mrc ;-)
Messages postés
31203
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 janvier 2021
3 212
Comment faire quoi ?
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
Voici le code
echo"move_uploaded_file($fichier[tmp_name],$_SERVER[DOCUMENT_ROOT]/img/reception/$nouveau_nom)<br/>";

$test=move_uploaded_file($fichier['tmp_name'],$_SERVER['DOCUMENT_ROOT'].'/img/reception/'.$nouveau_nom);


Voici le résultat
move_uploaded_file(/tmp/php335SDH,/var/www/html/img/reception/Letrancheur_20160529013621.jpg)

Warning: move_uploaded_file(/var/www/html/img/reception/Pyton_20160529013621.jpg): failed to open stream: Permission denied in /var/www/html/include/fonction.php on line 343

Warning: move_uploaded_file(): Unable to move '/tmp/php335SDH' to '/var/www/html/img/reception/Pyton_20160529013621.jpg' in /var/www/html/include/fonction.php on line 343
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
effectivement c'est un problème au niveau du tmp comment dois-je faire?
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
en fait je ne sais même pas si c'est ce tmp la qui est utilisé je ne m'y connais pas assez
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
7
je viens de remarquer que j'ai donné le mauvais tmp(dans l'arborésence)
il se trouve a la racine

drwxrwxrwt root root tmp