Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/10/2007, 12h21   #1
Invité de passage
 
Inscription : août 2007
Messages : 23
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 23
Points : 3
Points : 3
Par défaut [Upload] Probleme upload image

J'ai un problème avec cette partie de code :
Code :
1
2
3
4
5
$tool1 = mktime();
 
        copy($_FILES['filename']['tmp_name'], "../temp/$tool1.txt") or die ("Can't upload image");
 
        $fp = @fopen("../temp/$tool1.txt", "r");
Le message qui apparait après exécution est :
Citation:
Warning: copy(../temp/1191925463.txt): failed to open stream: Permission denied in /var/www/nos_sites/pub/publicite-pub.com/login/addfromfile.php on line 41
Can't upload image
ca_mido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/10/2007, 12h50   #2
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
C'est pas copy qu'il faut utiliser pour l'upload mais move_uploaded_file() .
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/10/2007, 14h26   #3
Invité de passage
 
Inscription : août 2007
Messages : 23
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 23
Points : 3
Points : 3
j'ai utiliser move_uploaded_file() mais le même problème existe encore
ca_mido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/10/2007, 18h27   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Et vous avez bien les droits d'écriture sur la destination indiquée ? (l'utilisateur sous lequel tourne Apache doit avoir le droit d'écriture sur ce répertoire)
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2007, 14h33   #5
Membre confirmé
 
Inscription : juillet 2007
Messages : 201
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 201
Points : 227
Points : 227
Déja dans ta premiere ligne de code tu fais ceci:

en fait dans la variable $tool1 tu mets le timestamp UNIX de la date et l'instant present.

et tu fais une copie d'un fichier vers une variable qui n'est pas un fichier... ca ne peux pas marcher.Tu dois dabord creer un fichier pour pouvoir faire la copie après si le fichier n'existe pas déja fopen (toto.txt,'a+')...........


et apres tu pourras faire un copy() si c copy que tu veux utiliser.
acirfa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2007, 14h53   #6
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
@acirfa
  1. Les fonctions copy ou move_uploaded_file (à utiliser dans le cas d'un upload) prennent en paramètre des chaînes représentant le nom d'un fichier. Qu'il utilise un timestamp ou non comme partie du nom, ne change absolument rien d'autant plus qu'ici cela lui permet d'assurer l'unicité de chacun d'eux (pas voir très peu de risque d'écrasements)
  2. Les fonctions copy et move_uploaded_file, conformément à ce qui est écrit dans la documentation, copie le fichier d'un point A à un point B. Le chemin de destination peut tout à fait être un fichier qui existe déjà, auquel cas il sera écrasé, comme inexistant. Se pose alors le droit des permissions, comme je l'ai évoqué plus haut ...
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h13.


 
 
 
 
Partenaires

Hébergement Web