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 de fichier avec choix multiple [PHP 5.4]


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    BTS SIO
    Inscrit en
    Janvier 2015
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : BTS SIO

    Informations forums :
    Inscription : Janvier 2015
    Messages : 53
    Points : 14
    Points
    14
    Par défaut upload de fichier avec choix multiple
    bonjour a tous je suis nouvelle et j'espere ne pas mettre trompe de forum
    si c'est le cas j'en suis désolée
    voila a la base je voudrai faire ceci

    Voila j'ai ces deux pages qui sont lies sur la page en .php j'ai un algorithme qui devrai me donner

    si menu=enfant alors
    renommer fichier en le renommant enfant
    et copier fichier le serveur

    sinon si menu = senior
    renommer fichier en le renommant senior
    et copier fichier le serveur

    sinon si menu=semaine
    renommer fichier en le renommant semaine
    et copier fichier le serveur

    or quand je lance le fichier est renomme enfant et je perd l'extension pdf que dois je faire je suis perdue....


    voila mon formulaire html :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <form action="upload.php" method="post" enctype="multipart/form-data">
        <h3>Envoi de fichier PDF :</h3>
        <input type='radio' name='menu' value='enfant'>menu enfants
        <br /> 
        <input type='radio' name='menu' value='pers_age'>menu personnes agées
        <br />
        <input type='radio' name='menu' value='semaine'>menu de la semaine
        <br /><br />
        Choisissez votre fichier pdf : 
        <br />
        <input type='file' name='monfichier'/>
        <br /><br />
        <input type='submit' value='Envoyer'/>
    </form>

    ainsi que mon code php :
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <?php
     
    	// Ici on teste le fait que le fichier a bien été envoyé et si il n'y a pas d'erreur
    	if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0)
     
                    {
                    /* La ligne de code ci dessous permet de voir si le fichier n'est pas trop lourd
                    * if ($_FILES['monfichier']['size'] <= 1000000)
                    * Attention ici 1000000 correspond a 1Mo soit 1 000 000 octets ainsi 
                    * si le fichier dépasse 1Mo le fichier est refusé 
                    */
                    {
                        // Vérification de l'extension du fichier ici .pdf
                        $infosfichier = pathinfo ($_FILES ['monfichier']['name']);
                        $extension_upload = $infosfichier['extension'];
                        $extensions_autorisees = array ('pdf');
     
     
                            if (in_array ($extension_upload, $extensions_autorisees))
                                {
                                    //Validation du transfert de fichier
                                        // Le Fichier existe sur le serveur si oui alors impossble de transferer
                                        //if(file_exists('uploads/' . $_FILES['monfichier']['name']))
                                        //{
                                        //die('Impossible de transférer votre fichier car le nom de celui existe déjà.');
                                        //}
     
                                $choix=$_POST['menu'];
                                $enfant=$_POST['menu'];
                                $pers_age=$_POST['menu'];
                                $semaine=$_POST['menu'];
     
                            if ($choix=$enfant)
                                {
                                /*
                                * $nouveau_nom = date('Ym') . '_' . $_FILES['monfichier']['name'] . '.' ;
                                * move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' .basename ($nouveau_nom));
                                * echo "votre fichier a été transférer<br /><br />";
                                * echo "nous sommes le : ". strftime ("%d %m %Y ", filemtime("uploads/"));
                                */ 
     
                                    $menuenfant = "menu enfant" ;
                                    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'noodo/' .basename ($menuenfant));
     
                                }                                                            
                            else if ($choix=$pers_age)
                                {
                                $menusenior = "menu personne agée" ;
                                move_uploaded_file($_FILES['monfichier']['tmp_name'], 'noodo/' .basename ($menusenior));
                                }   
     
                            else if ($choix=$semaine)
                               {
                               $menusemaine = "menu de la semaine" ;
                               move_uploaded_file($_FILES['monfichier']['tmp_name'], 'noodo/' .basename ($menusemaine));
     
                               }}}
                            echo "le menu choisi est est un menu pour ".$menu." et c'est un tres bon choix<br/><br />";
                                }
                            else 
     
                            echo "transfert impossible car votre fichier n'a pas la bonne extension "
                               . "nous rappelons que les fichiers pouvant être transférer sont des pdf <br>"
                               . "merci de votre compréhension<br /><br />"
                               . "<a href= 'formulaire.html'> retour</a>";                   
    ?>


    j'espere que vous pourrez m'aider

  2. #2
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Points : 52
    Points
    52
    Par défaut Hello !
    Salut !
    Je me suis permis de corriger ton code. J'ai préféré faire ça plutôt que de te faire une liste de ce qui n'allait pas.
    Regardes la différence avec ton code. tu remarqueras que j'ai viré plusieurs variables inutiles (même si j'ai conservé $choix), j'ai donné une extension au nom du fichier dans move_uploaded_file et deu trois autres petits trucs.
    Courage
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    <?php
     
    	// Ici on teste le fait que le fichier a bien été envoyé et si il n'y a pas d'erreur
    	if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0)
     
                    {
                    /* La ligne de code ci dessous permet de voir si le fichier n'est pas trop lourd
                    * if ($_FILES['monfichier']['size'] <= 1000000)
                    * Attention ici 1000000 correspond a 1Mo soit 1 000 000 octets ainsi 
                    * si le fichier dépasse 1Mo le fichier est refusé 
                    */
                    {
                        // Vérification de l'extension du fichier ici .pdf
                        $infosfichier = pathinfo ($_FILES ['monfichier']['name']);
                        $extension_upload = $infosfichier['extension'];
                        $extensions_autorisees = array ('pdf');
     
     
                            if (in_array ($extension_upload, $extensions_autorisees))
                                {
                                    //Validation du transfert de fichier
                                        // Le Fichier existe sur le serveur si oui alors impossble de transferer
                                        //if(file_exists('uploads/' . $_FILES['monfichier']['name']))
                                        //{
                                        //die('Impossible de transférer votre fichier car le nom de celui existe déjà.');
                                        //}
     
                                $choix=$_POST['menu'];
                            if ($choix == 'enfant')
                                {
                                /*
                                * $nouveau_nom = date('Ym') . '_' . $_FILES['monfichier']['name'] . '.' ;
                                * move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' .basename ($nouveau_nom));
                                * echo "votre fichier a été transférer<br /><br />";
                                * echo "nous sommes le : ". strftime ("%d %m %Y ", filemtime("uploads/"));
                                */ 
     
                                    $menu = "menu enfant" ;
                                    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'noodo/menu_enfant.pdf');
     
                                }                                                            
                            else if ($choix='pers_age')
                                {
                                $menu = "menu personne agée" ;
                                move_uploaded_file($_FILES['monfichier']['tmp_name'], 'noodo/menu_personne_agee.pdf');
                                }   
     
                            else if ($choix='semaine')
                               {
                               $menu = "menu de la semaine" ;
                               move_uploaded_file($_FILES['monfichier']['tmp_name'], 'noodo/menu_de_la_semaine.pdf');
     
                               }}}
                            echo "le menu choisi est est un menu pour ".$menu." et c'est un tres bon choix<br/><br />";
                                }
                            else 
     
                            echo "transfert impossible car votre fichier n'a pas la bonne extension "
                               . "nous rappelons que les fichiers pouvant être transférer sont des pdf <br>"
                               . "merci de votre compréhension<br /><br />"
                               . "<a href= 'formulaire.html'> retour</a>";                   
    ?>

  3. #3
    Membre à l'essai
    Femme Profil pro
    BTS SIO
    Inscrit en
    Janvier 2015
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : BTS SIO

    Informations forums :
    Inscription : Janvier 2015
    Messages : 53
    Points : 14
    Points
    14
    Par défaut Un très très grand merciiiiii
    Bonjour nels77,


    Merci infiniment oui maintenant je cromprend mieux pourquoi je galere sur un truc aussi bête
    mais bon comme on dit on aprrend de ses erreurs je te remercie du fond du coeur grace a toi
    je peut enfin avancer dans mon projet merci merci merci .

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/12/2013, 22h06
  2. Upload de fichier avec jsp
    Par fx2024 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 07/06/2006, 17h02
  3. [Upload] Upload de fichier avec un script PHP
    Par largolgd dans le forum Langage
    Réponses: 7
    Dernier message: 23/04/2006, 15h21
  4. Upload de fichier avec variable passée en paramètre
    Par reservoirdev dans le forum ASP
    Réponses: 2
    Dernier message: 22/04/2006, 16h06
  5. pb de select avec size avec choix multiple
    Par La_picolle dans le forum ASP
    Réponses: 10
    Dernier message: 28/08/2003, 15h21

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