street2009
Messages postés2Date d'inscriptionmercredi 4 février 2009StatutMembreDernière intervention 8 juin 2011
-
8 juin 2011 à 02:44
street2009
Messages postés2Date d'inscriptionmercredi 4 février 2009StatutMembreDernière intervention 8 juin 2011
-
8 juin 2011 à 19:07
Bonjour tout le monde j'aimerai savoir si quelqu'un pourrai m'aide car je suis bloquer sur mon application au niveau de l'insertion et la récupération d'une image photo dans ma base de donnée access.
je travail sur une plateforme VS2010 langage utilisé vb.net
je vous explique ce que je veux réellement:
j'aime arriver a enregistré les information (nom, mot de passe et la photo de mon utilisateur) dans ma base de donnée access qui contient les champ: login,pass,image, lors du la recherche d'une information j'aimerai que le code me permet de récupérer les information trouver et afficher l'image de l'utilisateur dans un contrôleur picturebox et avoir la possibilité de voir les autre utilisateur et leur image en défilant les information.
ingito
Messages postés35Date d'inscriptionvendredi 26 juin 2009StatutMembreDernière intervention17 juin 2011 8 juin 2011 à 15:52
salut
tu peux créer un champ "photo" dans ta BD acces, ce champ va contenir le chemin de la photo de la personne que tu peux loader par la suite dans un picture box.
4u4me4us
Messages postés780Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention30 octobre 20133 8 juin 2011 à 11:32
Je vais peut être dire une bêtise, mais bon, il est peut possible d'apprendre sans passé par de moment d’humiliation!
Est-il possible de d'enregistrer l'image juste en lisant le fichier et en sauvegardant le contenue dans un champs.
Ensuite en peut la réutiliser en le recréant à nouveau comme un simple fichier txt.
Je pense a cela car c grosomodo comme cela que l'on fait les transferts ftp. On ouvre le fichier et en l'envois bout par bout.
street2009
Messages postés2Date d'inscriptionmercredi 4 février 2009StatutMembreDernière intervention 8 juin 2011 8 juin 2011 à 19:07
on ce qui concerne l'insertion de la mon image cela n'est plus un pb car je l'ai resolu en voila le code utiliser:
'si un champ n'est pas rempli fin de procédure
If masq(TxtutilisateurNnom.Text) = "" Or _
masq(TxtutilisateurNpass.Text) = "" Then
MessageBox.Show("Vous devez remplir tous les champs !", "Erreur...", MessageBoxButtons.OK, MessageBoxIcon.Error)
Me.TxtutilisateurNnom.Focus()
Exit Sub
End If
'---- gestion des erreur
Try
sql = "INSERT into T_login([login],pass,[image]) VALUES('" & TxtutilisateurNnom.Text & "','" & TxtutilisateurNpass.Text & "','" & photo.FileName & "');"
cmd = New OleDbCommand(sql, cn)
dta = New OleDbDataAdapter(cmd)
'----- ouverture de la connexion
cn.Open()
'--- execution de la requette sql
cmd.ExecuteNonQuery()
'on vide le dataset pour le recréer avec
'les nouvelles données
dts.Clear()
'----- fermeture de la connexion
cn.Close()
'####### message de confirmation d'ajout
MsgBox("Ajout reussi", MsgBoxStyle.Information, "Enregistrement des données")
'#### vider les zone de saisie
TxtutilisateurNnom.Text = ""
TxtutilisateurNpass.Text = ""
PictureBox3.Image = Image.FromFile(Application.StartupPath & "\vide.jpg")
'##############################
Catch ex As Exception
MsgBox(ex.Message)
connexion()
End Try
actuellement le problème qui me reste c'est comment faire pour mètre a jour en cas d'erreur sur le chemin de mn image photo et récupérer l'image de l'utilisateur et l'afficher dans un contrôleur Picturebox au démarrage de l'application et les faire défilé si la table contient beaucoup d'utilisateur.
merci d'avance pour votre réponse en ce qui concerne mon code de modification le voici:
########################### modification ###########
Try
'récupération de la ligne dans le datarow
dtr = dts.Tables("T_login").Rows(rownum)
'création et exécution du commandbuilder
'pour mettre à jour le DataAdapter
cmdb = New OleDbCommandBuilder(dta)
'mise à jour des données du DataAdapter
'à partir du commandbuilder
dta.Update(dts, "T_login")
'on vide le dataset pour le recréer avec
'les nouvelles données
dts.Clear()
dta.Fill(dts, "T_login")
dtt = dts.Tables("T_login")
'mise à jour du datagrid
DataGrid3.SetDataBinding(dts, "T_login")
'retour au début du fichier
rownum = 0
'affichage des données dans les texbox
Me.textlogin.Text = dtt.Rows(rownum).Item("login")
Me.textpass.Text = dtt.Rows(rownum).Item("pass")
Me.PictureBox1.Image = dtt.Rows(rownum).Item("image")
MessageBox.Show("Les données sont modifiées !", "Modification...", MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
####################### fin modification ##########
et pour la récupération:
######################## code recuperation ###########
Try
' Dim stream As FileStream = New FileStream(photo.FileNames)
sql = "select T_login.* from T_login"
cmd = New OleDbCommand(sql)
dta = New OleDbDataAdapter(cmd)
cmd.Connection() = cn
Dim dr As OleDbDataReader
cn.Open()
dr = cmd.ExecuteReader()
'cn.Close()
'chargement du DataSet à partir du DataAdapter
dta.Fill(dtt)
'dta.Fill(dts, "T_login")
'chargement de la DataTable à partir du DataSet
' dtt = dts.Tables("T_login")
'si la table est vide alors
If rownum > dtt.Rows.Count - 1 Then
'Me.Show()
'Me.txtnom.Focus()
Else
'affichage des données dans les textbox
Me.TxtNomU.Text = dtt.Rows(rownum).Item("login")
If dr.Read() Then
PictureBox3.Image = Image.FromFile(dr.Item(3))
Else
PictureBox3.Image = Image.FromFile(Application.StartupPath & "\vide.jpg")
End If
'affichage des données dans le datagrid
DataGrid2.SetDataBinding(dts, "T_login")
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
################ fin code recuperation ###############