0/5 (1 avis)
Snippet vu 24 878 fois - Téléchargée 19 fois
<%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Data.OleDb" %> <script runat="server"> Sub Upload_Click(ByVal Sender As Object, ByVal e As EventArgs) 'Le nom du fichier FileName.InnerHtml = MonFichier.PostedFile.FileName Dim strFileName As String = MonFichier.PostedFile.FileName 'Ceci est le span où j'affiche les messages Span1.InnerHtml = "" Try 'On vérifie s'il envoi vraiment un fichier et si c'est un fichier excel. If (Len(strFileName) = 0) Then Throw New Exception("Spécifier un fichier.") ElseIf (Right(LCase(strFileName), 4) <> ".xls") Then Throw New Exception("Ce n'est pas un fichier excel.") End If Try 'On essai d'enregistrer le fichier dans le dossier \fichierstemp temporairement MonFichier.PostedFile.SaveAs(Server.MapPath("./fichierstemp") & "\" & MonFichier.PostedFile.FileName) Span1.InnerHtml = Span1.InnerHtml & "Le fichier a été téléchargé avec succès.<br>" Catch Exp As Exception Span1.InnerHtml = Span1.InnerHtml & "Impossible de télécharger le fichier.<br>" End Try ' Création de la connexion Ole DB sur mon fichier excel Dim strConn As String = "Provider=Microsoft.Jet.OleDb.4.0;" _ & "data source=" & Server.MapPath("./fichierstemp") & "\" & MonFichier.PostedFile.FileName & ";" _ & "Extended Properties=Excel 8.0;" Dim objConn As New OleDbConnection(strConn) 'Ma requete où traduction étant la région où se trouvent mes cellules Dim strSql As String = "SELECT * FROM traduction" Dim objCmd As New OleDbCommand(strSql, objConn) ' Création de la connexion Ole DB sur ma BD Dim strConn2 As String = "Provider=Microsoft.Jet.OLEDB.4.0;" _ & "Data Source=" & Server.MapPath("..\BD\glossaire.mdb") Dim objConn2 As New OleDbConnection(strConn2) Dim objCmd2 As New OleDbCommand 'Va contenir les résultats de ma requete Dim sourceReader As OleDbDataReader Try 'Ouvre la connexion et exécute la requête objConn.Open() sourceReader = objCmd.ExecuteReader() Try 'tente d'ouvrir la BD objConn2.Open() Catch ex As Exception Span1.InnerHtml = Span1.InnerHtml & "Impossible d'ouvrire la BD.<br>" End Try Try 'Lit le résultat de ma requete sur le fichier excel et l'insère dans ma BD While sourceReader.Read() 'bon ici un peu de niaisage pour faire ma requete... Dim strSql2 As String = "INSERT INTO glossaire1 (Anglais, Francais, Source) VALUES (" Dim col1, col2, col3 As String If Not IsDBNull(sourceReader.Item(0)) Then col1 = "'" & Replace(sourceReader.Item(0), "'", "''") & "'" Else col1 = "null" End If If Not IsDBNull(sourceReader.Item(1)) Then col2 = "'" & Replace(sourceReader.Item(1), "'", "''") & "'" Else col2 = "null" End If If Not IsDBNull(sourceReader.Item(2)) Then col3 = "'" & Replace(sourceReader.Item(2), "'", "''") & "'" Else col3 = "null" End If strSql2 = strSql2 & col1 & "," & col2 & "," & col3 & ")" objCmd2 = New OleDbCommand(strSql2, objConn2) Try 'On essai d'insérer la ligne dans ma BD objCmd2.ExecuteNonQuery() Catch ex As Exception Span1.InnerHtml = Span1.InnerHtml & "Impossible d'ajouter dans la BD.<br>" End Try End While Catch ex As Exception Span1.InnerHtml = Span1.InnerHtml & "Impossible de créer la requête.<br>" End Try Catch ex As Exception Span1.InnerHtml = Span1.InnerHtml & "Impossible d'ouvrir le fichier excel.<br>" Finally 'Ferme les connexions objConn.Dispose() objConn2.Dispose() End Try Try 'On tente de supprimer le fichier Dim deletefichier As New FileInfo(Server.MapPath("./fichierstemp") & "\" & MonFichier.PostedFile.FileName) deletefichier.Delete() Span1.InnerHtml = Span1.InnerHtml & "Fichier supprimé.<br>" Catch ex As Exception Span1.InnerHtml = Span1.InnerHtml & "Impossible de supprimer le fichier.<br>" End Try Catch ex As Exception Span1.InnerHtml = ex.Message End Try End Sub </script> <html> <head><title>Insérer un fichier excel dans une BD.</title> </head> <body> <form runat="server" EncType="Multipart/Form-Data" RunAt="Server"> <!-- Insert content here --> Choisir le Fichier : <asp:FileUpload ID="MonFichier" RunAt="Server"></asp:FileUpload> <asp:Button ID="UploadButton" Text="Upload" OnClick="Upload_Click" RunAt="Server"></asp:Button> <br /> <span ID="FileName" RunAt="Server" /><br /> <span ID="Span1" RunAt="Server" /><br /> </form> </body> </html>
30 mai 2008 à 17:27
merci de me repondre
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.