Anti slash disparaît

keunene 51 Messages postés samedi 5 avril 2014Date d'inscription 5 avril 2018 Dernière intervention - 18 août 2017 à 14:52 - Dernière réponse : keunene 51 Messages postés samedi 5 avril 2014Date d'inscription 5 avril 2018 Dernière intervention
- 30 août 2017 à 17:12
bonjour,
j'enregistre le lien de l'enregistrement d'une image dans ma base de données mysql.Hélas le lien enregistré mais les antislash du lien disparaissent sans mon consentement.
expl voici un lien que je récupère dans un textbox1:c:\users\hp\documents\visual studio 2012\Projects\CHEMINFICHIER\CHEMINFICHIER\bin\Debug\lefing\vendredi 18 août 201712-49-00.jpg
mais l'enregistrement donne ceci dans la base de données:
c:usershpdocumentsvisual studio 2012ProjectsCHEMINFICHIERCHEMINFICHIERinDebuglefingvendredi 18 août 201712-49-00.jpg
voici mon code d'enregistrement
Try
Dim dtA As New DateTime
dtA = Now


conv.ConnectionString = ("server=192.168.1.114;user ID=keunene1;Password=;database=garage")
conv.Open()

With cmdv
.Connection = conv
.CommandText = "INSERT INTO `garage`.`photo` ( `idph`,`lien`, `datelien`) " & _
"VALUES ( NULL,'" & TextBox1.Text & "','" & dtA.ToLongDateString & " à " & TimeOfDay & "');"
'in this line it Executes a transact-SQL statements against the connection and returns the number of rows affected
result = cmdv.ExecuteNonQuery
'if the result is equal to zero it means that no rows is inserted or somethings wrong during the execution
If result = 0 Then
MsgBox("Data has been Inserted!")
Else
MsgBox(" lien enregistrée pour " & TextBox1.Text, 64, "Contrôle entrée")




End If
End With


conv.Close()
Catch ex As Exception
MsgBox(ex)


End Try

je ne sais pas si le problème vient de la base de données ou du code
merci pour votre aide
Afficher la suite 

2 réponses

Répondre au sujet
NHenry 14129 Messages postés vendredi 14 mars 2003Date d'inscriptionModérateurStatut 19 avril 2018 Dernière intervention - 18 août 2017 à 18:33
0
Utile
1
Les \ sont aussi des caractères d’échappements pour les caractères "spéciaux".
par exemple \" affichera dans ton champ "
Il te faut les doubler.

Ton code est vulnérable à une attaque de type injection SQL, regardes les requêtes paramétrées ou échappe tout les caractères sensibles ( " \n \r \\ ... ) (la première solution est la plus propre et la plus sûre)
keunene 51 Messages postés samedi 5 avril 2014Date d'inscription 5 avril 2018 Dernière intervention - 30 août 2017 à 17:12
merci infiniment
Commenter la réponse de NHenry

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.