upload

jeremy13
Invité n'ayant pas de compte PHPfrance

30 oct. 2005, 00:36

Voila mon upload marche tré bien sur mon site mai je voudrais que la personne qui a uploadé le fichier sur mon serveur sa lui donne le lien du fichier qu'il est stocké sur mon serveur par exemple pour sen servir a posté une image sur un forum.
donc voila mon fichier qui je le rapelle marche tré bien
form name="formulaire_envoi_fichier" enctype="multipart/form-data" method="post" action="index.php">
  <div align="center">
    <p> 
      <input type="file" name="fichier_choisi">
      <br>
      <br>
      <input type="submit" name="bouton_submit" value="  Envoyer le fichier  "></font> 
    </p>
  </div>
</form>
<div align="center"> <font face="Arial, Helvetica, sans-serif">


  <?php
//on vérifies que le champ est bien rempli:
if(!empty($_FILES["fichier_choisi"]["name"]))
{
   //nom du fichier choisi:
   $nomFichier    = $_FILES["fichier_choisi"]["name"] ;
   //nom temporaire sur le serveur:
   $nomTemporaire = $_FILES["fichier_choisi"]["tmp_name"] ;
   //type du fichier choisi:
   $typeFichier   = $_FILES["fichier_choisi"]["type"] ;
   //poids en octets du fichier choisit:
   $poidsFichier  = $_FILES["fichier_choisi"]["size"] ;
   //code de l'erreur si jamais il y en a une:
   $codeErreur    = $_FILES["fichier_choisi"]["error"] ;
   
   //chemin qui mène au dossier qui va contenir les fichiers upload:
   $chemin = "upload/" ;

   if(copy($nomTemporaire, $chemin.$nomFichier))
      echo("<br>l'upload a réussi") ;

   else
      echo("<br>l'upload a échoué") ;

}//fin if
Je sui un debutant donc si vous pouvez m'aidé a me dire ce qu'il fau que je rajoute et il faut que je le place. merci d'avance et bonne soirée

ViPHP
ViPHP | 649 Messages

30 oct. 2005, 01:47

Ça suffit pas que de mettre le répertoire conventionnel puis le fichier qui change (le répertoire avec le nom du fichier lors de l'enregistrement)
<?
echo '<a href="http://www.monsite.com' . $nomdufichierlorsdudownload . '">Ceci est  un lien vers votre fichier</a>';
?>
Ça devient facile si tu fais juste donner le lien lorsque la personne vient de l'envoyer ($_POST['fichier']) sinon, stocke dans une bdd. Et colore tes codes :wink: [/php]
Image

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 oct. 2005, 01:49

Salut, apparemment tu "uploade" toujours dans le meme dossiertu peut donc mettre un lien en dur:
 if(copy($nomTemporaire, $chemin.$nomFichier))
pas besoin de travailler avec des variables globales etc..
echo 'lien: www.ton_site.fr/../'.$chemin.$nomFichier;
Il me semble que c'est ce qu'il y a de plus facile, non :-k [/php]

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 649 Messages

30 oct. 2005, 01:50

Ça revient un peu à ce que je lui disais non?
Image

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 oct. 2005, 01:51

oui oui, je suis juste un peu lent a cette heure ci :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

jeremy13
Invité n'ayant pas de compte PHPfrance

30 oct. 2005, 12:16

Voila merci de vos reponse mai jai toujours pas tré compri mon site c'est http://jeremytrinquecostes.free.fr je doi le remplacé par
echo 'lien: www.ton_site.fr/../'.$chemin.$nomFichier;
je met que celui la ou celui aussi ?
if(copy($nomTemporaire, $chemin.$nomFichier))
si vous pouvez me dire ce que je doit remplacée et surtout a quel ligne je le met de mon programme .Jai reflechie jai essayé pas moyen de le faire marcher.Merci d'avance

ViPHP
ViPHP | 2144 Messages

30 oct. 2005, 12:32

J'ai peur qu'on ai du mal à t'aider; visiblement tu ne maitrises pas trop le php.
Le plus simple c'est de mettre les mains dans le camboui et d'apprendre.
Il y a des tonnes dee tutorials sur le web.

Eléphant du PHP | 55 Messages

30 oct. 2005, 12:44

//chemin qui mène au dossier qui va contenir les fichiers upload: 
   $chemin = "upload/" ; 

   if(copy($nomTemporaire, $chemin.$nomFichier)) 
      echo("<br>l'upload a réussi") ; 
      echo( 'lien: http://jeremytrinquecostes.free.fr/'.$chemin.$nomFichier);
   else 
      echo("<br>l'upload a échoué") ; 

}//fin if 


Petit nouveau ! | 1 Messages

30 oct. 2005, 13:51

Ok par contre sa me donne une erreur http://jeremytrinquecostes.free.fr

Mammouth du PHP | 1311 Messages

30 oct. 2005, 14:07

tu a surement oublié de fremer ou d'ouvrir des parantheses
et si c'est le code d'audessus
//chemin qui mène au dossier qui va contenir les fichiers upload:
   $chemin = "upload/" ;

   if(copy($nomTemporaire, $chemin.$nomFichier))
{
      echo("<br>l'upload a réussi") ;
      echo( 'lien: http://jeremytrinquecostes.free.fr/'.$chemin.$nomFichier);
}  
 else
      echo("<br>l'upload a échoué") ;