Problème d'insertion d'une chaine contenant des cotes

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 981 fois - Téléchargée 35 fois

Contenu du snippet

Ce problème ne se pose que lorsqu'on insère dans la base de données à l'aide de INSERT INTO.
La solution c'est d'éviter INSERT INTO.
voir code

Source / Exemple :


<%
Set DBConn=server.CreateObject("ADODB.Connection")
DBConn.open("DataBase")
Set DBrs=server.CreateObject("ADODB.Recordset")
DBrs.open "Table",DBConn,3,3
DBrs.AddNew
DBrs.Fields("Champs1")="Chaine1 contenant ' reste de la chaine"
DBrs.Fields("Champs2")=valeur2
DBrs.Fields("Champs3")=valeur3
'reste des champs de la table
DBrs.update
DBrs.close
Set DBrs=NoThing
DBrs.close
Set DBConn= NoThing
DBConn.close
%>

Conclusion :


Le problème ne se pose pas à l'insertion au moins
Happy Programming from Djo

A voir également

Ajouter un commentaire

Commentaires

assia0108
Messages postés
2
Date d'inscription
mardi 23 février 2010
Statut
Membre
Dernière intervention
9 avril 2010
-
mysql_query("INSERT INTO `promotion` (`id_promotion` ,`id_produit` ,`ancien_prix` ,`nouveau_prix` ,`taux` ,`reduction` ,`date_debut` ,`date_fin` )
VALUES ('','$id_produit','$ancien_prix','$nouveau_prix','$taux','$reduction','$date_debut','$date_fin','')");
je c pa pkoi ca marche pas svp si vous avez une reponse
banekodeih
Messages postés
24
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
8 février 2008
-
Voilà le code en C# , vouz pouvez simplement le transformer en VB. J'espère que ca servira qqu'un.

// Formate la chaine pour accepter les guillemets

public static string FormatBase(string s)
{
string old = """;
string newValue = "\\"";

s = s.Replace(old,newValue);
return s;
}
cs_Yopyop
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1 -
ca fonctionne, sûr, mais pas pour l'extraction:
utiliser la fonction REPLACE, mais dans une autre fonction car cette fonction donne une erreur si la string est nulle (donc l'inclure dans une fonction type myReplace() et tester la vlaeur de la string envoyée )::::: yopyop
LE probleme reste pour la suite si on a des requete a faire en testant le champ

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.