IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Upload et téléchargement de fichiers


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 151
    Points : 69
    Points
    69
    Par défaut Upload et téléchargement de fichiers
    Bonjour ,

    J'ai un problème de téléchargement de fichier :

    J'ai fais un upload de fichier qui marche très bien avec ceci :
    Formulaire html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <form method="post" action="fileUpload.php" enctype="multipart/form-data">
    Upload un fichier ( max <10 Mo ) : 
    	<input type="hidden" name="10485760" value="12345" />
    	<input type="file" name="monfichier" /><br/>
    	<input type="submit" name="submit" value="Envoyer" />
    </form><br/>
    Mon fileUpload contient ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?php
    include('verif.php');
    ?>
     
    <?php
    $nomOrigine = $_FILES['monfichier']['name'];
    $elementsChemin = pathinfo($nomOrigine);
    $extensionFichier = $elementsChemin['extension'];
    $extensionsAutorisees = array("pdf" ,"doc","xcl");
    if (!(in_array($extensionFichier, $extensionsAutorisees))) {
        echo "Le fichier n'a pas l'extension attendue";
    } else {    
        $repertoireDestination = "stockage/";
        $nomDestination = $nomOrigine;
     
    	if (file_exists("$nomOrigine")){
    	echo "L'upload ne s'est pas faite car le nom de votre fichier est deja utilise, veuillez le renomer";}
     
        elseif (move_uploaded_file($_FILES["monfichier"]["tmp_name"], 
                                         $repertoireDestination.$nomDestination)) {
            echo "Upload réussi : <a href='documents.php'>retour</a>";
        } else {
            echo "Le fichier n'a pas été uploadé (trop gros ?) ou ".
                    "Le déplacement du fichier temporaire a échoué".
                    " vérifiez l'existence du répertoire ".$repertoireDestination;
        }
    }
    ?>
    Et pour finir mon petit gestionnaire de download contient ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Fichier actuellement sur le serveur : <br>
    <?php
     
    if ($handle = opendir('stockage')) {
    	while (false !== ($file = readdir($handle))) {
            if ($file != "." && $file != "..") {
    			echo '<a href="',$file,'">',$file,'</a><br/>'; //ligne 58
            }
        }
        closedir($handle);
    }
    Donc l'upload marche niquel, le fichier s'enregistre bien où je veux, mais le vrai problème c'est au niveau du dowload :

    Le lien "<a href="',$file,'">',$file,'</a>" dans mon gestionnaire de download me met page web introuvable, donc j'ai essayé de mettre "<a href="',stockage/$file,'">',$file,'</a>" et j'ai maintenant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    You don't have permission to access /tests/SiteTest/protege/<br /><b>Notice</b>: Use of undefined constant stockage - assumed 'stockage' in <b>C:/wamp/www/tests/SiteTest/protege/documents.php</b> on line <b>58</b><br /><br /><b>Warning</b>: Division by zero in <b>C:/wamp/www/tests/SiteTest/protege/documents.php</b> on line <b>58</b><br /> on this server.
    J'ai bien entendu essayé de mettre du chmod mais ça ne veut pas :s

    Voilà si vous avec une réponse pour moi !

    Désolé pour la longueur mais j'ai essayé d'être le plus clair possible.

    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    et comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<a href="'.$file.'">'.$file.'</a><br/>';

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 151
    Points : 69
    Points
    69
    Par défaut
    Tout d'abord merci d'avoir répondu si rapidement.

    Ensuite ça y est j'ai trouvé la solution, en fait il fallait faire ceci :
    $repertoireDestination = "stockage/"
    Et ensuite
    echo '<a href="'.$repertoireDestination.$file.'">'.$file.'</a><br/>';
    Je n'ai constaté aucune différence entre les "." et les ",".

    Merci encore d'avoir pris du temps pour résoudre mon problème.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ZF 1.8] Upload et téléchargement de fichier avec HTTP
    Par oswalidos dans le forum MVC
    Réponses: 2
    Dernier message: 30/05/2014, 16h49
  2. Upload et téléchargement des fichiers
    Par marie23 dans le forum ASP.NET
    Réponses: 9
    Dernier message: 01/07/2010, 15h06
  3. Réponses: 9
    Dernier message: 15/04/2009, 18h32
  4. Réponses: 3
    Dernier message: 14/06/2007, 17h20
  5. [Upload] Téléchargement de fichier
    Par Lunthear dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2007, 19h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo