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

ASP.NET Discussion :

Parcourir dans un dossier et enregistrer un fichier


Sujet :

ASP.NET

  1. #1
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut Parcourir dans un dossier et enregistrer un fichier
    Bonjour

    Je débute en vb.net et j'ai un petit souci
    J'ai crée un formulaire en vb.net qui est lié à une base sql server, et je voudrai bien créer un truc qui ressemble à l'image en dessous :



    ya le bouton parcourir qui est un fileupload et un bouton Ok qui à chaque fois qu'on l'execute il enregistre notre fichier (qu'on a telecharger d'un dossier spécifique) dans le label en dessous (comme je débute , je suis pas si sur que ça soit un label) et puis la possibilité de pouvoir supprimer notre fichier du label grace à un bouton sélectionner et un supprimer

    Je voudrai savoir si c'est possible de faire ça en vb.net parceque j'ai essayé de chercher partout et j'ai pas trouvé

    Et si c'est oui , pourriez vous m'éclairer un peu

    Merci d'avance

  2. #2
    Membre émérite
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Par défaut
    cela ne va pas être en vb.net mais en ASP.NET !
    tout comme php, asp va t'offrir la possibilité de créer ce genre de formulaire. VB va quant à lui t'offrir le moyen de définir la marche à suivre lorsque l'utilisateur va cliquer sur OK.

    En ASP.NET
    ==> PARTIE ASP
    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
    <%@ Page language="c#" AutoEventWireup="false"
        Inherits="PandaTest.Tests.FileUpload" Codebehind="FileUpload.aspx.cs" %>
    <!DOCTYPE html public "-//w3c//dtd html 4.0 transitional//en" >
    <HTML>
      <HEAD>
        <TITLE>FileUpload</TITLE>
      </HEAD>
      <BODY>    
        <FORM id="Form1" method="post" runat="server" enctype="multipart/form-data">
          <ASP:LABEL id="Label1" runat="server" width="232px">
             Select a file and press "Send File"
          </ASP:LABEL>
          <BR>
    
          <INPUT id="fileChooser" type="file" name="fileChooser" RUNAT="server">
          <BR>
    
          <ASP:BUTTON id="bSendFile" runat="server" text="SendFile" width="240px" />
    
         </FORM>    
      </BODY>
    </HTML>
    ==> PARTIE CODE
    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
    using System;
    
    namespace PandaTest.Tests {
    
        public class FileUpload : System.Web.UI.Page {
        protected System.Web.UI.WebControls.Button bSendFile;
        protected System.Web.UI.HtmlControls.HtmlInputFile fileChooser;
        protected System.Web.UI.WebControls.Label Label1;
        
         Web Form Designer generated code 
    
        private void btnSendFile_Click(object sender, System.EventArgs e) {
            // On récupère le chemin absolu sur le poste client
            String absoluteFilename = fileChooser.PostedFile.FileName;
            // On récupère uniquement le nom du fichier
            String filename = System.IO.Path.GetFileName(absoluteFilename);
            // On définit le dossier de sauvegarde sur le serveur
            String folder = this.Server.MapPath(".") + @"\";
            // On sauvegarde le fichier
            fileSelector.PostedFile.SaveAs(folder + filename);
        }
        }
    }
    Michaël Mary
    Consultant PLM dans une société de conseil toulousaine
    Auditeur CNAM-IPST depuis septembre 2008
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    John F. Woods
    mon cv et mon domaine et mon blog
    Aucune question technique par MP, svp

  3. #3
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    Merci pour ta réponse

    Donc la je suis obligé de programmer en c# c'est ça ?
    J'aurai bien voulu le faire en vb.net c'est pour cela (des réticences dans la boite qui m'obligent à ne programmer qu'en vb.net )

  4. #4
    Membre émérite
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Par défaut
    Citation Envoyé par chriswhite06
    Merci pour ta réponse

    Donc la je suis obligé de programmer en c# c'est ça ?
    J'aurai bien voulu le faire en vb.net c'est pour cela (des réticences dans la boite qui m'obligent à ne programmer qu'en vb.net )
    Bien sur, tu peux coder en vb.net... Mon exemple est en C# car je ne manipule pas le vb.net...

    Mais c'est assez proche en code...

    Dites-moi si je me trompe mais cela donnerait un truc comme celui-ci non ?
    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
    Public Class FileUpload
            Inherits System.Web.UI.Page
            Protected WithEvents bSendFile As System.Web.UI.WebControls.Button
            Protected WithEvents Label1 As System.Web.UI.WebControls.Label
            Protected WithEvents fileChooser As System.Web.UI.HtmlControls.HtmlInputFile
    
            Private Sub bSendFile_Click( _
                    ByVal sender As System.Object, _
                    ByVal e As System.EventArgs _
            ) Handles bSendFile.Click
                Dim absoluteFilename As String = fileChooser.PostedFile.FileName
                Dim filename As String = System.IO.Path.GetFileName(absoluteFilename)
                Dim folder As String = Me.Server.MapPath(".") & "\"
                fileSelector.PostedFile.SaveAs(folder & filename)
            End Sub
        End Class
    ATTENTION : Code non compilé et non testé !!!
    Michaël Mary
    Consultant PLM dans une société de conseil toulousaine
    Auditeur CNAM-IPST depuis septembre 2008
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    John F. Woods
    mon cv et mon domaine et mon blog
    Aucune question technique par MP, svp

  5. #5
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    Merci beaucoup

    Je teste et je te répond

    Edit : Question un peu bête , la j'aurai besoin d'un fileupload (pour le bouton parcourir), 2 boutons (Ok et supprimer) et l'endroit ou je placerai les fichiers telechargés sera un label ?
    Autrement dis est ce que les fichiers téléchargés s'ajouteront direcetement dans le label ? Et si je veux supprimer un fichier de ce label aurais je besoin d'un bouton sélectionner ou bien pas besoin ?

    Merci et désolé encore pour le dérangement

  6. #6
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    J'ai le fileSelector qui n'est pas déclaré (fileSelector.PostedFile.SaveAs(folder & filename)), et comme je suis pas fort en programmation , je me demande on le déclare en quoi ?

    dim fileSelector as ...... ?

    Merci

  7. #7
    Membre émérite
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Par défaut
    Oups, quand je code ce genre de trucs, je trimbale toujours le choix entre xxxSelector et xxxChooser !!! Remplace par fileChooser.
    Michaël Mary
    Consultant PLM dans une société de conseil toulousaine
    Auditeur CNAM-IPST depuis septembre 2008
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    John F. Woods
    mon cv et mon domaine et mon blog
    Aucune question technique par MP, svp

  8. #8
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    Merci panda31

    une dernière question juste pour enlever le doute , est ce que j'utilise un "fileupload" ou bien un "inputfile" ?

  9. #9
    Membre émérite
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Par défaut
    Dans la partie HTML que je t'ai donnée, tu as tout ce dont tu as besoin je pense.

    Avec INPUT tu crées un champ avec un bouton "browse".

    Donc tu devrais avoir tout ce dont tu as besoin.

    POUR TON EDIT ==> En fait, c'est à toi de piloter l'endroit où tu vas stocker les fichiers envoyés par l'utilisateur. Donc, il te faudra peut-être gérer des droits d'écriture sur ton serveur !!

    Heureux d'avoir pu t'aider !

    Ciao
    Michaël Mary
    Consultant PLM dans une société de conseil toulousaine
    Auditeur CNAM-IPST depuis septembre 2008
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    John F. Woods
    mon cv et mon domaine et mon blog
    Aucune question technique par MP, svp

  10. #10
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    Merci ça marche parfaitement c'est ce que je cherchais

    C'est possible de rajouter un label ou dedans ça s'inscrit tous les noms des fichiers qu'on a rajouté

    les fichiers qu'on rajoute sont dans un dossier , et sauvegardés dans une BD avec un lien hypertexte

    Je me demande est ce que c'est possible quand on rajoute des fichiers , que le lien hypertexte se rajoute dans ce label (pour que ça fasse un récapitul de ce qu'on a téléchargé)

    merci

  11. #11
    Membre émérite
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Par défaut
    Citation Envoyé par chriswhite06
    Merci ça marche parfaitement c'est ce que je cherchais

    C'est possible de rajouter un label ou dedans ça s'inscrit tous les noms des fichiers qu'on a rajouté
    Un label dans quoi ?
    Si tu veux lister tes données en local, tu peux utiliser les fonctions de la lib standard pour lister les data contenues dans le dossier cible.
    Mais bon, tu sais déjà où tu les places à priori donc tu peux coder ceci en dur (tu mets le path de storage dans une constante).
    Ensuite, tu vas simplement concaténer cetet constante avec le nom du fichier uploadé.

    Tu n'as plus qu'à storer dans ta BD !

    Dis-le moi si j'ai pas été clair.
    Michaël Mary
    Consultant PLM dans une société de conseil toulousaine
    Auditeur CNAM-IPST depuis septembre 2008
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    John F. Woods
    mon cv et mon domaine et mon blog
    Aucune question technique par MP, svp

  12. #12
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    comme dans cette image que j'ai envoyé au début : http://www.hiboox.com/lang-fr/image....g=aoz5nqz6.jpg

    quand tu cliques sur "sendfile" je veux que le lien du fichier (ou son nom) se sauvegarde dans ce label qui est en dessous , est ce possible ?

    dans ma bd ya un champ que j'ai nommé "fichier_ajouté" qui a pripori dedans vont se sauvegarder ces fichiers ajoutés

  13. #13
    Membre émérite
    Avatar de panda31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2003
    Messages : 670
    Par défaut
    Ah ok pardon...

    oui bien sûr !

    Il suffit de lister les fichiers dans ton dossier de storage et tu fais pour chaque fichier trouvé, tu l'écris dans ta box. Après biens sur, chaque élément doit être un objet de ce que tu veux :
    Element
    ..Attributs :
    ...- path : String
    ...- show : Boolean
    ...- (...)
    ...Méthodes
    ...+ accesseurs()
    ...+ (...)

    Je ne sais pas ce que tu utilises dans tes Formulaires.

    Voici un exemple de code (en C#) pour pouvoir ajouter les enregistrements d'un datareader dans une liste déroulante(dropdownlist) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while(myReader.Read()) 
         { 
    	lstNames.Items.Add(myReader["Un champ"]); 
         } 
    myReader.Close();
    et la déclration du contrôle dropdownlist... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:DropDownList id="lstNames"  runat="server"></asp:DropDownList>
    Dans cet exemple simple, tu vois à peu près ce qu'il te faudra coder :
    TANT QUE j'ai des fichiers dans mon dossier REPETER
    ...SI le fichier est affichable (attribut show)
    ...ALORS
    ...... lstNames.Items.Add(Element);
    ...FINSI
    FINTANTQUE

    Après si on clique sur l'élément, il faut que tu gères l'ouverture directement après un click (il faut gérer l'évenement OnClick de chaque item).
    Michaël Mary
    Consultant PLM dans une société de conseil toulousaine
    Auditeur CNAM-IPST depuis septembre 2008
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    John F. Woods
    mon cv et mon domaine et mon blog
    Aucune question technique par MP, svp

Discussions similaires

  1. Enregistrer un classeur en PDF dans le dossier d'origine du fichier EXCEL
    Par barnoult dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/04/2015, 18h25
  2. [XL-2007] Enregistrer un classeur en PDF dans le dossier d'origine du fichier EXCEL
    Par chikikonkarne dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 26/04/2015, 21h07
  3. Dans quel dossier on met un fichier pour qu'il soit trouvé ?
    Par cal23 dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 20/01/2013, 13h16
  4. Réponses: 1
    Dernier message: 04/01/2010, 18h30
  5. Réponses: 1
    Dernier message: 06/06/2007, 23h14

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