Comment faire un code html pour uploader.

Bonjour,

J'ai essayer de faire un code d'upload pour uploader des fichiers depuis un pc vers un serveur en local. J'ai réussi a faire le code avec un bouton selectionier le fichier a uploader et un bouton pour commencer l'upload mais je sais pas comment faire pour que le ficheir aille dans le repertoir C:/data/

Merci d'avance pour votre aide.

Guillaume Soucy

6 réponses

  1. Tu est sur du web

    $uploaddir = 'C:/';

    ne doit pas pouvoir fonctionner
    Tu ne peux envoyer des fichier que dans un répertoire (ou à la racine de ton site) donc dans www de C:\Program Files\EasyPHP-5.3.8.1
    1. J'ai modifier le code et maintemant quand je clique sur Envoyer sa donne;

      Warning: move_uploaded_file(/www/file.txt) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\Program Files\EasyPHP-5.3.8.1\www\upload.php on line 432

      Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\Program Files\EasyPHP-5.3.8.1\tmp\phpFB.tmp' to '/www/file.txt' in C:\Program Files\EasyPHP-5.3.8.1\www\upload.php on line 432
      Attaque potentielle par téléchargement de fichiers.
      Voici plus d'informations :
      Voici quelques informations de débogage :Array
      (
      [userfile] => Array
      (
      [name] => file.txt
      [type] => text/plain
      [tmp_name] => C:\Program Files\EasyPHP-5.3.8.1\tmp\phpFB.tmp
      [error] => 0
      [size] => 4
      )

      )

      Merci.
      1. J'ai modifier le code html et j'ai faite un code php

        <!-- Le type d'encodage des données, enctype, DOIT être spécifié comme ce qui suit -->
        <form enctype="multipart/form-data" action="F:\Documents\upload.htm" method="post">
        <!-- MAX_FILE_SIZE doit précéder le champ input de type file -->
        <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
        <!-- Le nom de l'élément input détermine le nom dans le tableau $_FILES -->
        Envoyez ce fichier : <input name="userfile" type="file" />
        <input type="submit" value="Envoyer le fichier" />
        </form>

        et

        <?php
        // Dans les versions de PHP antiéreures à 4.1.0, la variable $HTTP_POST_FILES
        // doit être utilisée à la place de la variable $_FILES.

        $uploaddir = 'C:/';
        $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

        echo '<pre>';
        if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
        echo "Le fichier est valide, et a été téléchargé
        avec succès. Voici plus d'informations :\n";
        } else {
        echo "Attaque potentielle par téléchargement de fichiers.
        Voici plus d'informations :\n";
        }

        echo 'Voici quelques informations de débogage :';
        print_r($_FILES);

        echo '</pre>';

        ?>

        Quand je clique sur envoyer rien ne se passe.

        Guillaume
        1. Bonjour,

          Voici mon code html;

          <form enctype="multipart/form-data" action="_URL_" method="post">
          <input type="hidden" name="MAX_FILE_SIZE" value="1000">
          Send this file: <input name="userfile" type="file">
          <input type="submit" value="Send File">
          </form>

          Merci

          Guillaume
          1. tout en html ?

            en php tu fait un truc du genre

            move_uploaded_file($tmp_file, $content_dir . 'toto.zip')

            (Tu ne donne pas de lien en direction d'un répertoire genre C:/data/ mais en relatif / site)

            tu simule bien un serveur web sur ton ordi ?