[PHP] Formulaire

Bonjour,
j'ai un petit problème pas méchant, c'est que je voudrais upload une photo en ayant deja le chemin.
Je m'explique, j'ai deja un chemin d'un ficher dans une variable ( on l'appelera $a ) et je voudrais upload le fichier.
J'ai fait :

<input type="file" value="<?php echo $a; ?>" name='photo'/>
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />

Puis pour j'ai un test sur ma varaible $_GET['photo'] si elle existait eh bah... Non. La variable $contents exite bien ça pas de souci. Solution ?

Juste une autre petite question: Il n'y aurait'il pas une autre manière de upload des fichiers sans passé par un formulaire ?
Configuration: Windows 2000
Internet Explorer 6.0

7 réponses

  1. C'est vrai que j'ai pas était malin ( oublier le FILES >< ) Pour faire court, j'ai une url dans le value dans l'input file

    <input type='file' value="C:\DOCUME~1\xxx\Bureau\la\aff.bmp" name='photo'/>

    Après avoir envoyer sans utilise le parcourir et que j'affiche echo $_FILES['photo']['name']; Rien ne m'affiche ( bien sur quand j'upload n'importe quelle fichier avec le bouton parcourir ça marche ). Donc J'aimerai par le bias d'une url deja connu, et qui serait dans le script, l'uploadé ^^.
    1. Il faut utiliser JS pour envoyer automatiquement le fichier.
  2. ah non ! j'ai trouvé.

    Il faut utiliser $_FILES['photo'] pour récupérer des informations du fichier à uploader.
    1. Le problème ne vient pas de la !!
      1. Explique ce que tu veux faire, sois clair.
    2. Attends, en fait c'est ça qu'il faut mettre ^^' :

      Page d'envoi :

      <form method="post" action="chan.php" enctype="multipart/form-data">
      Commune<input type="texte" name="commune" />
      <br/>Chantier<input type="texte" name="chantier" />
      <?php echo "<input type='file' value='".$contents." name='photo'/>" ?>
      <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
      <input type="submit" name="submit" value="Envoyer" />
      </form>


      Page pour recevoir :
      <?php
      echo $_GET['photo'];
      ?>

      Même si ça ne vas pas marcher, de toutes façons ton truc ça tournerais en boucle.
      Explique-moi exactement ce que tu veux faire.
      1. >< c'est la page chan.php. L'espace ne résout rien. $_GET['photo'] n'existe toujours pas ^^.

        Mais es ce qu'on mettre un value dans un type file ? Dans ce cas ci non.
        1. Il faut que la page d'action et de code original soient différentes, ça marchera mieux.
      2. OK commentaire qui sert a rien !

        <?php
        session_start();
        ?>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
        <head>
        <title>En Construction</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <link rel="stylesheet" type="text/css" href="css.css" />
        </head>
        <body>
        <div id="menu">
        <a href="index.php" title="blabla">Accueil</a>
        <a href="trav.php" title="blabla">Tache de travaux</a>
        <a href="chan.php" title="blabla">Chantier</a>
        </div>

        <?php
        $url="C:\Documents and Settings\xxx\Bureau\la\\txt.txt";
        $contents = file_get_contents($url);
        echo $contents;
        ?>
        <form method="get" action="chan.php" enctype="multipart/form-data">
        Commune<input type="texte" name="commune" />
        <br/>Chantier<input type="texte" name="chantier" />
        <input type="file" value="<?php echo $contents;?>" name='photo'/>
        <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
        </form>
        <?php
        echo $_GET['photo'];
        ?>
        </body>
        </html>

        La prochaine évite merci ^^
        1. Il faut mettre le prochain code dans chan.php
          Tu as la source ?
          Et essaye aussi
          <input type="file" value="<?php echo $contents; ?>" name='photo'/>


          (juste un espace mais c'est dangereux par fois.
      3. Salut,
        Il en manque beaucoup à ton code PHP, un formulaire ne suffit pas !
        Vas voir chez le siteduzero, il y a un bon tuto.
        a++