Version complète: sur le forum Webmaster Hub : transfert de fichier qui ne marche pas :(
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
gto55
Bonjour,

Je voudrais envoyé une photo vers un dossier sur un blog que je développe mais la fonction move uploaded file ne marche pas sur ce server dédié.

Voilà le code:
CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>
<form action="test.php?photo=ok" enctype="multipart/form-data" method="post">
<input name="image" type="file"  id="image" />
<input type="submit" />
</form>
<?PHP
if($_GET["photo"]="ok") {
$photoUploadTemp = $_FILES['image']["tmp_name"];
$photoUpload = addslashes($_FILES['image']["name"]);
$dossier = "./$photoUpload";

if(move_uploaded_file( $photoUploadTemp, $dossier)){
echo $dossier;
echo "ok";
}else{
echo "no";
}
}
?>
<body>
</body>
</html>


Et voilà le mesage d'erreur:
CITATION
Warning: move_uploaded_file(./medium_dsc00142.jpg): failed to open stream: Permission denied in /home/costados/www/lacosta/test/test.php on line 16

Warning: move_uploaded_file(): Unable to move '/tmp/phpwICKyg' to './medium_dsc00142.jpg' in /home/costados/www/lacosta/test/test.php on line 16


La ligne 16 correspond à "if(move_uploaded_file( $photoUploadTemp, $dossier)){"

Est-ce que qqn saurait ce qu'il faudrait faire ?

Merci wub.gif
beal2912
Bonjour, j'avais le même problème avec la fonction fopen($url). C'est mon hébergeur qui avait restreint l'utilisation de la fonction pour des raisons de sécurité....

Bref donc pour moi c'est peut être ton hébergeur la cause de ton problème. Moi j'ai toujours pas trouvé de solution sad.gif
fred_business
Bonjour,

Il s'agit effectivement d'un problème de droits d'accès. Le plus simple est de contacter ton hébergeur pour placer les droits en écriture sur ce répertoire.

Bonne journée

Fred
gto55
Merci smile.gif
Belf
Pas sur qu'OVH le fasse, en tout cas c'est très simple, tu appliques un CHMOD 777 sur le dossier où devraient atterir tes fichiers : /test/
Si tu as un logiciel pour se connecter au FTP assez complet la plupart du temps un clique doit sur le dossier permet de modifier les droits d'accès.
Dan
Bonjour,

Il faut donner à Php le droit d'écriture dans le répertoire vers lequel tu souhaites faire atterrir ta photo. Et comme php tourne en module Apache, il tourne avec l'identification de ce dernier, soit sous l'utilisateur nobody (un utilisateur n'ayant que très peu de droits).

Donc, la seule possibilité que tu aies est de mettre ce répertoire en mode 777.

Dan
gto55
CITATION(Belf @ mardi 15 août 2006, 01h27) *
Pas sur qu'OVH le fasse, en tout cas c'est très simple, tu appliques un CHMOD 777 sur le dossier où devraient atterir tes fichiers : /test/
Si tu as un logiciel pour se connecter au FTP assez complet la plupart du temps un clique doit sur le dossier permet de modifier les droits d'accès.



ça marche merci smile.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.