comment faire un upload de fichiers du client vers le serveur?

comment faire un upload de fichiers du client vers le serveur? - PHP - Programmation

Marsh Posté le 05-08-2002 à 15:15:46    

en fait je voudrais avoir un petit bouton genre <input type="button" value="Browse..."> qui ouvre un petit explorateur de fichiers, puis on choisit son fichier, et enfin il s`upload sur le serveur a l`endroit prévu pour.
 
seleument j`ai aucune idée de comment on upload un fichier en PHP, pour le moment je regarde un peu toutes les fonctions sur les fichiers mais si vous pouvez m`aider merci  :hello:

Reply

Marsh Posté le 05-08-2002 à 15:15:46   

Reply

Marsh Posté le 05-08-2002 à 15:23:37    

http://www.phpinfo.net
http://www.phpindex.com


---------------
Ma passion : [:sunny delight]
Reply

Marsh Posté le 05-08-2002 à 15:38:12    

Reply

Marsh Posté le 05-08-2002 à 16:06:40    

Ben je suis egalement en train de faire ca...
 
Alors voila les infos que g recup :  
 
il faut mettre un input de type file et dans la form mettre enctype="multipart/form-data2
 
Mais apres c la que ca se corse car il semble que suivant la version (php3 ou php4) ca differe....
Et moi perso je suis free et il semble que ca marche qu avec la version php3
 

Reply

Marsh Posté le 05-08-2002 à 16:09:04    

en fait finalement j`ai trouvé un bel exemple sur www.cfmfrance.com
 
par contre je voudrais bien une petite précision, j`ai déja regardé sur nexen mais y`avais pas grd chose, alors voila:
quand on utilise la fonction  
// copy($fileup,$named);  //
$fileup est donc ma variable contenant le chemin d`acces du fichier sur le client, mais de quel type doit il etre? avec des simples ou doubles slaches ?
 
et pour le chemin de destination ($named), c`est a partir du repertoire de base du serveur? ( easyphp/www/ pour la config de base de easyphp) ?

Reply

Marsh Posté le 05-08-2002 à 16:09:23    

fonction interessante :
 
copy =>php3
 
move_is_uploaded =>php4

Reply

Marsh Posté le 05-08-2002 à 16:13:04    

pour répondre a MkRacing66:
moi j`ai finalement symplement utilisé un  
 
<form name="Form1" method="post" >
<input name="fileup" type="file" size=30>
<input type="submit" value="Envoyer votre fichier!" action="upload.php">
</form>
 
puis ds la page upload.php la fonction copy($fileup,$named);
 
 
---edit---
arf zut j`ai répondu avec un message de décalage ;)


Message édité par cybercouf le 05-08-2002 à 16:14:02
Reply

Marsh Posté le 05-08-2002 à 16:22:31    

Ouais mais je ne pense pas que se soit suffisant...
 
Et mon pb c plutot les droits d acces au repertoire ou je veux deplacer le ficher etc....

Reply

Marsh Posté le 05-08-2002 à 16:27:53    

oui en effet, la je cherches un peu plus d`infos sur la commande copy
quand j`aurais avancé je posterais ici  ;)

Reply

Marsh Posté le 05-08-2002 à 16:32:38    

pour ce qui est de l'upload de fichier, j'ai déjç vu des trucs bizarres chez free ( :ange: )
 
un script fonctionnait en étant nommé script.php3 mais ne fonctionnait plus en script.php
 
tout ça pour dire qu'il doit y avoir des fonctions qui changent selon la version du php donc prudence ;)


Message édité par trueslash le 05-08-2002 à 16:32:51
Reply

Marsh Posté le 05-08-2002 à 16:32:38   

Reply

Marsh Posté le 05-08-2002 à 16:32:58    

j`ai trouvé un bel exemple sur nexen :

Code :
  1. function upload($destination , $userfile , $userfile_name , $userfile_size){
  2. $Resultat='';
  3. // Taille maximale de l'upload  
  4.   $size=102400;
  5.   if ($userfile_size>$size)
  6.   {
  7.   $size_max_ko=$size/1024;
  8.   $Resultat="Votre fichier est trop gros ($size_max_ko ko max).";
  9.   }
  10.   if ($userfile!="none" && $userfile_size<$size && $userfile_size!=0)
  11.   {
  12.   If(!file_exists("$destination/$userfile_name" ))
  13.   {
  14.   // si le répertoire n'existe pas  
  15.   if(!file_exists("$destination" ))
  16.   {
  17.   mkdir("$destination", 0775);
  18.   }
  19.   if (!copy($userfile, "$destination/$userfile_name" ))
  20.   {
  21.   $Resultat="Problème de transfert pour le fichier;";
  22.   }
  23.   else
  24.   {
  25.   $Resultat="Fichier enregistré";
  26.   }
  27.   }
  28.   else
  29.   {
  30.   $Resultat="Le fichier ".$userfile_name." que vous voulez transférer
  31. existe dèjà dans votre répertoire.";
  32.   }
  33.   }
  34.   // Resultat  
  35. return $Resultat;
  36.  
  37. }


mais ca explique pas trop les droits comme tu dis, ca correspond a quoi leur $userfile_name et $userfile ??
 

Reply

Marsh Posté le 05-08-2002 à 16:47:45    

yen a un qui est le nom donné par l'utilisateur dans l'inpu type = file
 
l'autre est le nom du fichier temporaire sur le serveur, faut le renommer apres

Reply

Marsh Posté le 05-08-2002 à 17:11:23    

ok donc si on fait :
copy($userfile, "$destination/$userfile_name" )
 
on a:
$userfile = nom du fichier temporaire cree par le formulaire
$destination=répertoire sur le serveur
$userfile_name=nom final du fichier sur le serveur
 
par contre au niveau des droits d`acces je sais pas trop, moi c pour un site local ou tout les pc on acces complet sur le serveur dc nopb

Reply

Marsh Posté le 05-08-2002 à 17:12:46    

oui mais moi j aimerais bien savoir :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed