Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/03/2011, 00h28   #1
Invité de passage
 
Inscription : mai 2007
Messages : 42
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 42
Points : 3
Points : 3
Par défaut Apostrophe formulaire bd

Bonjour,

J'ai un formulaire envoyant des données à un bd mais lorsque j'ai un apostrophe dans mon textarea j'ai une erreur.

Pouvez vous m'aider?

Voici le code de mon formulaire:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<%@LANGUAGE="VBSCRIPT"%>
 
<%
  Response.Charset = "iso-8859-1"
%>
<html>
<head>
<title>Form to database</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body> 
<%
'declare your variables
Dim titre, intro, contenutxt, datetxt, img, categorie, categorie2
Dim sConnString, connection, sSQL
'Receiving values from Form, assign the values entered to variables
titre = Request.Form("Titre")
intro = Request.Form("Intro")
categorie = Request.Form("Categorie")
categorie2 = Request.Form("Categorie2")
datetxt =Request.Form("datetxt")
contenutxt =Request.Form("contenutxt")
img =Request.Form("images")
 
'declare SQL statement that will query the database 
sSQL = "INSERT into nouvelles (Titre, categorie, categorie2, Intro, datetxt, contenutxt, Images) values ('" & _
titre & "', '" & categorie & "', '" & categorie2 & "', '" & intro & "', '" & datetxt & "', '" & contenutxt & "', '" & img & "')" 
'define the connection string, specify database
'driver and the location of database
sConnString="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("article.mdb")
'create an ADO connection object 
Set connection = Server.CreateObject("ADODB.Connection")
 
'Open the connection to the database
connection.Open(sConnString)
 
'execute the SQL 
connection.execute(sSQL)
 
 
'Done. Close the connection object
connection.Close
Set connection = Nothing
%>
</body>
</html>
Merci

Fredl
FredLx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 01h56   #2
Membre confirmé
 
Homme Olivier
Webmaster Pays Basque
Inscription : avril 2004
Messages : 151
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 40
Localisation : France

Informations professionnelles :
Activité : Webmaster Pays Basque
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2004
Messages : 151
Points : 200
Points : 200
Envoyer un message via Skype™ à eclisse
Ahhhhh les simples quote sous sql.... que du bonheur...
Ajoute une fonction à ta page asp genre
Code :
1
2
3
function safeString(chaine) 
    safeString=replace(chaine, "'", "''")
end function
et modifie ta requête en conséquence..
Code :
1
2
sSQL = "INSERT into nouvelles (Titre, categorie, categorie2, Intro, datetxt, contenutxt, Images) values ('" & _
safeString(titre) & "', '" & safeString(categorie) & "', '" & safeString(categorie2) & "', '" & safeString(intro) & "', '" & safeString(datetxt) & "', '" & safeString(contenutxt) & "', '" & safeString(img) & "')"
explication : le simple quote chez SQL est un caractère réservé. Pour ajouter un text contenat un apostrophe, tu es obligé de remplacer l'apostrophe simple par un apostrophe double
eclisse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 09h12   #3
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 546
Points : 1 546
Bonjour

tu peux aussi remplacer ta concaténation par une requête paramétrée.

cf ici
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 10h42   #4
Invité de passage
 
Inscription : mai 2007
Messages : 42
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 42
Points : 3
Points : 3
Parfais...ça marche...merci

Fred
FredLx est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h28.


 
 
 
 
Partenaires

Hébergement Web