copier un fichier vers un autre serveur local

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : copier un fichier vers un autre serveur local

par Calimero » 22 oct. 2007, 10:06

<?
copy("../img/admin/index/orli_index.gif","//Argon4/Intranet/data/domino/html/OrliPhp/classifieds_img/");
?>

Warning: copy(//Argon4/Intranet/data/domino/html/OrliPhp/classifieds_img/) [function.copy]: failed to open stream: Permission denied in D:\Lotus\Domino\Data\domino\html\Orli\admin\test.php on line 2
Je rappelle que j'ai bien les droits d'accès.
Si PHP te le dit, ça ne peut qu'être vrai :-) Tu as peut-être les permissions sur ton utilisateur courant, mais apparemment pas PHP. Il faut revoir la configuration des droits sur le partage, ou alors de l'utilisateur qui fait tourner PHP.

par jcmahieu » 22 oct. 2007, 09:34

Au temps pour moi, voici l'instruction et le message d'erreur exacts:


<?
copy("../img/admin/index/orli_index.gif","//Argon4/Intranet/data/domino/html/OrliPhp/classifieds_img/");
?>


Warning: copy(//Argon4/Intranet/data/domino/html/OrliPhp/classifieds_img/) [function.copy]: failed to open stream: Permission denied in D:\Lotus\Domino\Data\domino\html\Orli\admin\test.php on line 2

par Tracker » 20 oct. 2007, 17:55

Salut,

En fait rien n'indique dans la doc que l'opération est impossible:
Système de fichiers
/path/to/file.ext
relative/path/to/file.ext
fileInCwd.ext
C:/path/to/winfile.ext
C:\path\to\winfile.ext
\\smbserver\share\path\to\winfile.ext
file:///path/to/file.ext

Filesystem est le gestionnaire par défaut de PHP et il représente les fichiers locaux. Lorsqu'un chemin relatif est spécifié (un chemin qui ne commence pas par /, \, \\, ou une lettre de lecteur Windows), le chemin sera calculé relativement à la position courante. Dans de nombreux cas, c'est le dossier de résidence du script, à moins qu'il n'ait été modifié. En utilisant la version CLI, le chemin sera calculé par rapport au dossier d'appel du script.
Il faut creuser un peu...
D'abord pourquoi l'erreur est sur un move_uploaded_file(...) alors que c'est copy(...) qui est invoqué ??
Peux-tu mettre le code de ta ligne 70 ?


Tracker.

par Calimero » 20 oct. 2007, 17:41

En complément de la réponse d'@rthur, tu auras peut-être de meilleurs résultats si tu accèdes à ton partage réseau windows par une lettre de lecteur virtuel. (Voir la commande NET USE sous windows 2000 et supérieur pour déclarer ce lecteur virtuel sur le système)

par @rthur » 20 oct. 2007, 17:35

Bonjour,

Le problème vient du fait que tu tentes d'utiliser une adresse réseau Windows (qui d'ailleurs devrait commencer par 2 antislashes et pas 2 slashes) et je ne suis pas sûr que ce soit possible avec PHP...
Une solution alternative si tu as des serveurs FTP sur tes serveurs seraient de passer par le protocole FTP

copier un fichier vers un autre serveur local

par jcmahieu » 19 oct. 2007, 15:17

Bonjour,

Voici mon problème.
Je voudrais simplement copier un fichier (test.php) d'un serveur vers un autre. Les deux serveurs sont sur le réseau local. J'ai les droits en lecture et en éciture sur les deux serveurs.

le code:

test.php

...
copy("img/test.jpg","//Argon4/img/test.jpg");
...

le message d'erreur:

Warning: move_uploaded_file(//Argon4/img/test.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in D:\Lotus\Data\test.php on line 70

Je rappelle que j'ai bien les droits d'accès. Quelqu'un a une idée?

Merci d'avance