Probleme avec la fonction copy sous Linux

humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008 - 20 juin 2006 à 01:49
ARAKIS2 Messages postés 1 Date d'inscription lundi 15 octobre 2007 Statut Membre Dernière intervention 5 février 2009 - 5 févr. 2009 à 14:34
Bonjour, j'ai un prob avec la fonction copy qui ne copie pas une image dans un répertoire bien précise (sous Linux chez l hebergeur) alors ke cella marche bien avant en local (sous xp), il ya aussi la fonction is_dir() ke jai aussi teste chez l 'hebergeur et ki elle aussi ne fonctionne pas !!
sachant bien les images et les répertoire on bien etais modifier pour avoir le droit d'ecriture
voici le code :
<?
require("../scripts/secure.inc.php");
$fours=$_POST['fours'];


$image1=$_POST['image1'];
$siteweb1=$_POST['siteweb1'];
if (!is_dir("../imgs/$fours")) msg("Repertoire dont le droit d ecriture est interdit");


if(copy("$image1","../imgs/$fours/image1.jpg")) msg("Copy de la premiere image bien passe");


$image2=$_POST['image2'];
$siteweb2=$_POST['siteweb2'];
if(copy("$image2","../imgs/$fours/image2.jpg")) msg("Copy de la 2eme image bien passe");


$image3=$_POST['image3'];
$siteweb3=$_POST['siteweb3'];
if(copy("$image3","../imgs/$fours/image3.jpg"))  msg("Copy de la 3eme image bien passe");


$image4=$_POST['image4'];
$siteweb4=$_POST['siteweb4'];
copy("$image4","../imgs/$fours/image4.jpg");


$image5=$_POST['image5'];
$siteweb5=$_POST['siteweb5'];
copy("$image5","../imgs/$fours/image5.jpg");


$image6=$_POST['image6'];
$siteweb6=$_POST['siteweb6'];
copy("$image6","../imgs/$fours/image6.jpg");
....
?>
ghost101





ghost101

28 réponses

J_G Messages postés 1406 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 28 août 2007 10
21 juin 2006 à 10:30
Bien, bien...

Donc c'est là qu'on arrive au problèmes de droit d'accès !

PHP est exécuter par la personne qui utilise le script. Soit un badaud perdu au fin-fond de la toile internet et dont l'identité est inconnu du serveur.

Il sera donc nommée : "nobody"

Pour envoyer un fichier dans le répertoire $uplaod_dir, nobody doit avoir le droit d'y écrire...

Vérifie si ce répertoire est bien en écriture/lecture/accès(execution) pour tout le monde.

Ensuite, vérifie si( file_exists($_FILES['mon_fichier']['tmp_name']) )
Si oui, il n'y a plus qu'à move_upload_dir...

A+
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
21 juin 2006 à 13:06
maintenant le fichier et copié mais le probleme c qu' il est important d'uploader une image deja existante sur le serveur !!
0
J_G Messages postés 1406 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 28 août 2007 10
21 juin 2006 à 13:44
? comprens pas, désolé ?
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
21 juin 2006 à 14:23
oui, c'est que il y'a deja une image qui porte qui doit etre ecrase par l'image copié, c pour ca que j'utilise au debut la fonction copy. est ce ke ca ne serai pas possible de faire la mm chose avec la move_upload_file
Merci   
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
J_G Messages postés 1406 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 28 août 2007 10
21 juin 2006 à 14:47
cet avertissement provient de move_uploaded_file -- Déplace un fichier téléchargé

Avertissement
Si le fichier de destination existe déjà, il sera écrasé.

Que dire de plus ...?
0
WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
21 juin 2006 à 15:37
bah il faut faire un test... et si il existe, on rajoute lenomdufichier(1).txt...

----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
21 juin 2006 à 16:42
Merci tt le monde.

en effet move_uploaded_file permet d'ecrase le fichier existant.

A+
0
ARAKIS2 Messages postés 1 Date d'inscription lundi 15 octobre 2007 Statut Membre Dernière intervention 5 février 2009
5 févr. 2009 à 14:34
Bibi
Salut,

Je pense qu'il manque l'adresse de ton serveur (celle du poste qui possède le ou les fichiers à copier). Avec copy la source comme la destination sont en faite des URL
exp: http:/127.0.0.1/chemin
0
Rejoignez-nous