PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WEBDEV 2024 → filtres et apostrophes
filtres et apostrophes
Started by bobby drake, Jul., 26 2004 2:03 PM - 1 reply
Posted on July, 26 2004 - 2:03 PM
Salut

mes filtres plantent quand la borne, qui est une chaine de caractères, contient
une apostrophe.

ex : l'ancien fosse
erreur : mot ANCIEN inattendu

comment surmonter cela ?

Merci à ceux qui m'ont répondu ! Mais j'ai pas été assez précis. Le filtre
est aléatoire, change à chaque passage, donc je ne peux pas prévoir si il
y aura des apostrophes ou pas. Donc je ne peux pas multiplier les guillemets
à tout va...

Merci d'avance !
Posted on July, 26 2004 - 4:30 PM
bobby_drake avait soumis l'idée :

Salut

mes filtres plantent quand la borne, qui est une chaine de caractères,
contient une apostrophe.

ex : l'ancien fosse
erreur : mot ANCIEN inattendu

comment surmonter cela ?

Merci à ceux qui m'ont répondu ! Mais j'ai pas été assez précis. Le filtre
est aléatoire, change à chaque passage, donc je ne peux pas prévoir si il
y aura des apostrophes ou pas. Donc je ne peux pas multiplier les guillemets
à tout va...


Attention de rester dans le meme Thread, c'est plus facile pour tout le
monde.

Bien sûr que tu ne connais pas à priori le contenu de ton filtre, mais
au lieu de passer ta variable en parametre, tu passe par une petite
fonction
MonFiltre=Quote(MaVariable)
avec la fonction Quote en prime
FONCTION Quote(pCh)
// 1. Double les apostrophes dans la chaine
// 2. Entoure avec des apostrophes

Ch est une chaîne

Ch=pCh
Ch=SansEspace(Ch)
Ch = Remplace(Ch, "'", "''")
SI gBase=cMYSQL ALORS
Ch = Remplace(Ch, "\", "\\")
Ch = Remplace(Ch, RC, " \r\n")
Ch = Remplace(Ch, Caract(0), "\0")
// Ch = remplace(Ch, tab, "\t")
// Ch = remplace(Ch, caract(13), "\r")
// Ch = remplace(Ch, caract(10), "\n")
//
FIN
RENVOYER "'"+Ch+"'"




Merci d'avance !


--
Cordialement
Eric