Remplacement d'une chaîne de caractères...

CaptainGloo Messages postés 6 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 19 avril 2004 - 17 avril 2004 à 18:06
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 19 avril 2004 à 18:24
Bonjour à tous,

Je suis actuellement en train de créer un site pour une maison d'éditions et je me trouve confronté à un petit problème. :)
Normal me direz vous autrement je ne posterais pas de uestion. :)
D'abord les données techniques :
Le site est développé en ASP et interfacé avec une base ACCESS.

Voici ce que je voudrais résussir à faire.
Lors de l'affichage d'une page fiche de livre, tous les éléments (titre, auteur, format, resume, image, desciptif complet...) sont récupérés dans la base et affichés dans la page. Jusque là, rien de bien méchant même pour une bille en ASP comme moi.

Seulement, nous avons créé un lexique de termes techniques, et je voudrais que toutes les occurences de terme technique que l'on retrouve dans la table lexique de la base soient détectées lors de l'affichage du descriptif du livre et que s'insère en auto un href, récupérant la valeur du mot sur le mot concerné, envoyant vers la page lexique.

Et là, c'est hors de mes compétences. :D
j'ai bien réussi à bidouiller des morceaux de codes pour detecter et remplacer une chaine de caracteres dans la base, mais je vois pas comment tester si un element present dans le texte de la page est egalement present dans ma table lexique.

Voili, voila, si c'est pas assez clair, je veux bien fournir d'autrs renseignements.

Merci d'avance pour vos avis éclairés.

10 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
17 avril 2004 à 19:08
si j'ai bien compris, tu as une bdd avec des données, et tu veux afficher ces données sur une page, mais tu veux que si ces données comporte un certains mot elle se change ?
si c'est ca c'est pas compliqué :) :

chainebdd = replace(chainebdd,ChaineRecherche,"" & ChaineRecherche & "")

J'espere avoir été clair

@+

Cyril (Alias Jesusonline)
0
CaptainGloo Messages postés 6 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 19 avril 2004
17 avril 2004 à 19:31
Lol! concis et rapide. ^^

En fait plus clairement :

j'affiche donc une page produit :
Actuellement je recupere mes donnees comme ça :

Auteur
Titre
Sous titre
Description

tout ça est récupéré via une requette classique vers ma bdd dans la table produits.

J'ai également une table lexique structurée comme ça :
ID, Nom_terme, descr_terme (le descr on s'en fout, c'est juste pour précision. :)

Ce que je voudrais en fait, c'est que sachant que le Titre, le sous titre et la description du produit peuvent contenir un terme qu'on retrouve dans la Table "Lexique", creer une requette qui teste le contenu affiché et remplace les occurences que l'on retrouve dans la table Lexique par une Url.

voili, voila.
Si ce que tu m'a donné m'aide, je te de mande juste si possible de m'expliquer comment ça marche. ^^
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
17 avril 2004 à 19:46
Je suis pas tres fort en base de données, donc je comprend pas tout :-p mais je pense que le code que je t'ai donné fonctionne :)

dim ResultatRequete as string
dim ResultatFinal as string
dim ContenuLexique as string

ResultatFinal(ResultatRequete,ContenuLexique ,"[ " & ContenuLexique & "]")

exemple :

dim ResultatRequete as string = "Bonjour je m'appelle Cyril"
dim ResultatFinal as string
dim ContenuLexique as string ="Cyril"

ResultatFinal(ResultatRequete,ContenuLexique ,"[ " & ContenuLexique & "]")

Resultat final aura la valeur : "Bonjour je m'appelle [www.beaujolaisdurand.com Cyril]"

Je sais pas si ca pourras t'etre utile.

si toncontenu lexique est une phrase et que tu recherches chaque occurence du mot :

for each s as string in split(ContenuLexique," ")
dim ResultatRequete as string
dim ResultatFinal as string

ResultatFinal(ResultatRequete,s,"[ " & s & "]")

next

tu dois bien sur faire ca pour le titre le sous titre la description

j'espere avoir été utile :)

@+

Cyril (Alias Jesusonline)
0
CaptainGloo Messages postés 6 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 19 avril 2004
17 avril 2004 à 20:03
Toute connaissance est bonne à prendre. :)

bon, on va voir si mes maigres connaissances en ASP vont m'aider.

Je reprend don code :

dim ResultatRequete as string = "La j'insere contenu voulut (ex : la descr)"
dim ResultatFinal as string
dim ContenuLexique as string ="La j'insere le resultat de la recherche dans la table "Lexique" colonne Nom_terme "

ResultatFinal(ResultatRequete,ContenuLexique ,"[ " & ContenuLexique & "]")

Pif pouf un petit response.write ensuite.
En amont je cree un recorset et une req SQL de recup des donnees dans la Table lexique en sus de ma req initiale.

J'ai bien compris? ;)
/me prépare sa corde.
0

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

Posez votre question
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
17 avril 2004 à 20:36
ouais je crois que t'as bien compris :-p

normalement c bon, j'espere que le resultat le sera aussi :p

@+

Cyril (Alias Jesusonline)
0
CaptainGloo Messages postés 6 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 19 avril 2004
17 avril 2004 à 20:44
Des qu j'ai 10 minutes, je test. :D

Merci de ton aide.
0
CaptainGloo Messages postés 6 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 19 avril 2004
18 avril 2004 à 11:47
Bon, suite à des petits sucis VBscripts, voici ce que ça donne :

<%
Dim ResultatRequete
Dim ContenuLexique
Dim ResultatFinal
ResultatRequete = ("Variable1")
ContenuLexique = ("Variable2")
ResultatFinal=Replace(ResultatRequete,ContenuLexique ,"[ " & ContenuLexique & "]")
response.write ResultatFinal
%>

Ca marche bien pour une variable 2 statique.
Le B pour moi maintenant étant de récupérer les données de ma table lexique.
Je suis dessus, mais je rame. :D
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
18 avril 2004 à 12:16
Excuse moi pour la synntaxe, j'ai l'habitude de travailler en vb.net donc les variables doivent etre typé ...

Le script est bien mais si dans "Variable2" tu as plusieurs mots il faut que tu fasses une boucle sur tout les mots de ta variable grace à split

@+

Cyril (Alias Jesusonline)
0
CaptainGloo Messages postés 6 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 19 avril 2004
19 avril 2004 à 09:23
Pas de PBs pour la syntaxe, tout marche tranquile. :)

Par contre maintenant, mon PB c'est de récupérer les valeurs de la variable2 pour pouvoir les tester. :D

Si y'a un spé des Reqs vers BDD, je suis preneur aussi. ;)
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
19 avril 2004 à 18:24
dsl mais moi j'ai encore jamais eu l'occasion de travailler avec les bdd :p

Cyril (Alias Jesusonline)
0
Rejoignez-nous