Enregistrer chemin d'acces bdd (antislash)

Résolu
ronando Messages postés 141 Date d'inscription lundi 24 décembre 2001 Statut Membre Dernière intervention 5 juillet 2007 - 5 juil. 2007 à 11:39
ronando Messages postés 141 Date d'inscription lundi 24 décembre 2001 Statut Membre Dernière intervention 5 juillet 2007 - 5 juil. 2007 à 15:30
Bonjour,


sur ma page .aspx j'upload un fichier sur mon serveur et je veux ensuite enregistrer le chemin du fichier dans une base de données (mysql)


L'upload se passe bien. Je récupère le chemin et le nom du fichier
Exemple d'un chemin passé dans ma requete SQL :


insert into ... values ....
'C:\\mesdocums\\Visual Studio 2005\\WebSites\\GMAO1\\doc.pdf'


La requete se passe bien mais dans la base de données ca donne :
'C:mesdocumsVisual Studio 2005WebSitesGMAO1doc.pdf'


Les antislashs sont enlevés et je n'ai donc plus de chemin valide.
Quand j'execute cette meme requete avec un editeur de requete mysql là ca marche..


Quelqu'un voit le problème ?


Merci

7 réponses

SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
5 juil. 2007 à 14:52
Je crois que j'ai compris,

Par défaut, mysql utilise aussi le \ comme caractère d'échappement.
Alors, soit tu double encore une fois les \ ('C:\\\\mesdocums\\\\Visual Studio 2005\\\\WebSites\\\\GMAO1\\\\doc.pdf'),

Soit, il doit y avoir une possibilité de changer ce paramètre sur mysql, regarde de ce côté, si tu comprend l'anglais :
http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html
http://dev.mysql.com/doc/refman/5.0/fr/server-sql-mode.htmlle paramètre NO_BACKSLASH_ESCAPES.

Dans tous les cas, je te conseille tout de même de passer par des requêtes paramétrées, pour la sécurité et stabilité de ton application.

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
3
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
5 juil. 2007 à 11:44
Hello,

est-ce que tu as essayé avec une requête paramétrée ?

un peu de pub pour moi même

http://www.csharpfr.com/tutoriaux/COMMENT-FAIRE-REQUETE-PARAMETREE-DANS-BASE-DONNEE_710.aspx

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
0
ronando Messages postés 141 Date d'inscription lundi 24 décembre 2001 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 14:17
Non j'ai pas testé, j'aimerai comprendre pouquoi ça ne fonctionne pas.

Personne ?
0
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
5 juil. 2007 à 14:29
Hello,

Je n'ai pas de mysql sous la main pour tester, mais avec SqlServer, ça passe sans problèmes.
Est-ce que tu utilises un connecteur ODBC, .net, ou autre ?

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ronando Messages postés 141 Date d'inscription lundi 24 décembre 2001 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 14:35
J'utilise le connecteur .net fourni par mysql :

http://dev.mysql.com/downloads/connector/net/5.0.html
0
ronando Messages postés 141 Date d'inscription lundi 24 décembre 2001 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 14:36
ou la 5.1 plutot ..
0
ronando Messages postés 141 Date d'inscription lundi 24 décembre 2001 Statut Membre Dernière intervention 5 juillet 2007
5 juil. 2007 à 15:30
Merci pour tes conseils !!
0
Rejoignez-nous