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 - 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

WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
20 juin 2006 à 03:59
Sakut,

Heu... c'est quoi ton hébergeur ? est tu sur qu'il accepte le php ?

----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
20 juin 2006 à 08:40
Salut!
Es-tu sûr que le répertoire de destination a bien les droits en écriture?
if (!is_dir("../imgs/$fours")) msg("Repertoire dont le droit d ecriture est interdit");
>> Te dis juste que c'est un dir, mais pas qu'il a les droits suffisants... :)

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
20 juin 2006 à 08:42
Lol, WhiteDarf, s'il acceptait pas le PHP il l'aurait remarqué ;-)

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
WhiteDwarf Messages postés 510 Date d'inscription samedi 29 décembre 2001 Statut Membre Dernière intervention 23 mai 2008
20 juin 2006 à 09:37
On sait jamais ^^

----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
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
20 juin 2006 à 10:19
Salut,

tu utilises un adressage relatif...
peut-être serat-il utile de vérifier le point de départ de ton adressage via la fonction suivante :

getcwd -- Retourne le dossier de travail courant

Car honètement, je ne vois aucune raison pour que les chose ce passe mal sous linux.

A+
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 juin 2006 à 11:04
hello,

ouais, je vote aussi pour un problème de chemin. Soit du chemin de destination, soit du source (soit des deux).
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 11:11
Bonjour tt le monde, et merci de vos reponses,
En réponse a ta question WhiteDwarf l'hebergeur choisi accepte biensur php.
Mais je ne sais pas encore d'ou vient l'erreur, si vous avez d'autres questions....
Merci d'avance
ghost101
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 11:18
Je vous informe ke malgre le if mis pour avoir le message d'erreur rien ne s'affiche sur le serveur alors ke en local ca marche bien
ghost101
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 juin 2006 à 11:31
Vérifie tes chemins!
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
20 juin 2006 à 11:31
Hmm, si ca marche en local et pas sur le serveur je reste sur mon idée de droits... :D
Quels sont les droits de : ../imgs/$fours/ ?

D'ailleursm tente un
echo "../imgs/$fours/";
Pour vérifier que le chemin est bien ce qu'il devrait être!

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 12:34
ok je vais testé ca Merci   

ghost101
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 17:41
En effet echo "../imgs/$fours/";  affiche bien le repertoire desire peut tu me conseiller un autre anticote que // que j'ai deja essayer
merci

ghost101
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
20 juin 2006 à 17:53
Salut,

Donc si on reste sur les problèmes de droit d'accès :

Tu fais
if( !is_dir("../imgs/$fours/") ) exit( "Pas le droit..." );

peut-être faut-il mettre
if( !(is_dir("../imgs/$fours/") and is_writable("../imgs/$fours/")) ) exit( "Pas le droit..." );

Peut-être...
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 17:53
les chemins de la source=C:\\Documents and .....\\image1.jpg et de la dest=../imgs/machines_neuves/image1.jpg
et ils sont correcte

ghost101
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 juin 2006 à 17:56
Arf, tu pouvais pas le dire avant...?
Tu crois que ça va où, ton c:\\Document... , quand tu n'es pas en local, et donc que tu es sur le serveur de ton hébergeur...??
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 18:19
oui en effet je suis sur le serveur de l'hebergeur kes tu me propose pour changer c:\\Documents and ....
 malalam
Merci
ghost101
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
20 juin 2006 à 18:32
Ah bah d'acccord !!!

J'étais loin de penser à ça... J'ai plus les bons réflexes.

Bon, alors pour résoudre ton problème, il faut que tu commences par lire ce chapitre de la doc PHP :

http://fr.php.net/manual/fr/features.file-upload.phpChapitre 38. Gestion des chargements de fichier

Là, tu comprendras qu'on ne peut faire un "copier/coller" de fichier aussi facilement entre un serveur et son client...

Bonne lecture.
A+
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
20 juin 2006 à 18:32
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
20 juin 2006 à 19:21
Merci je vais le lire
a+

ghost101
0
humer100 Messages postés 18 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 7 octobre 2008
21 juin 2006 à 00:39
apres modification de la page d'uploade les images :


require("../scripts/secure.inc.php");
$fours=$_POST['fours'];


$uploaddir = "/home/pro/journaltextile/imgs/$fours/";
$uploadfile = $uploaddir . basename($_FILES['image1']['name']);
msg($uploadfile);
echo getcwd();
if (move_uploaded_file($_FILES['image1']['name'], $uploadfile))
   msg("Le fichier est valide, et a été téléchargé avec succès");


avec biensur des modif sur le fichier de form :
<form action="UploadPhoto2.php" method="post" enctype="multipart/form-data" name="addform">
mais ca ne marche pas ni en local  ni sur le serveur
0
Rejoignez-nous