Création d'un petit moteur de recherche sur base SQL - suite erreur sur envoi precedent

Le
Daniel
Bonjour,

Je travail su VS 2005 en vb.net et SQL.

J'aissais de créer un petit moteur de recherche qui avec plusieurs mots dans
un textbox me renverrait les données. A peine démarré, j'ai déjà un
problème.

Je voulais faire un split sur ma textbox pour récupérer les différents mots
et revoyer dans une variable en formatant le texte.

J'avais pensé à quelque chose de ce type.

Dim Format As String
Dim i As Integer
For Each Infos As String In Me.TextBox1.Text.Split(" ")
i = i + 1
Format = " (Nomdelacollone like % + " & Infos & " + %) and "
Next Infos
Dim Select as string = "Select * From mabase Where" & Format

Comme vous pouvez vous doutez ca ne marche pas, j'avou ne pas être trés bon
au niveau de boucle.
Dans mon For Each pour vérifier, j'expédies les données dans un
respose.write c'est ok mais bon je ne veux pas de HTML, je veux les expédier
dans une variable et la le système me renvoi que le dernière mot.

Quelqu'un pourrait il me mettre sur la voie ou y a t'il un exemple pour ce
type de requête.

En vous remerciant par avance.
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel
Le #12207021
J'ai peu être trouvé, j'ai fait ça.

Dim test As String = ""
For Each Infos As String In Me.TextBox1.Text.Split(" ")
test &= "debut " & Infos & " milieu"
Next
test &= "fin"
Me.Label1.Text = test

Mais je reste à l'écoute, s'il existe un exemple de code pour un petit
moteur de recherche multi-mots et multi-champ.

Cordialement,

"Daniel" news: OY9bRja%
Bonjour,

Je travail su VS 2005 en vb.net et SQL.

J'aissais de créer un petit moteur de recherche qui avec plusieurs mots
dans
un textbox me renverrait les données. A peine démarré, j'ai déjà un
problème.

Je voulais faire un split sur ma textbox pour récupérer les différents
mots
et revoyer dans une variable en formatant le texte.

J'avais pensé à quelque chose de ce type.

Dim Format As String
Dim i As Integer
For Each Infos As String In Me.TextBox1.Text.Split(" ")
i = i + 1
Format = " (Nomdelacollone like % + " & Infos & " + %) and "
Next Infos
Dim Select as string = "Select * From mabase Where" & Format

Comme vous pouvez vous doutez ca ne marche pas, j'avou ne pas être trés
bon au niveau de boucle.
Dans mon For Each pour vérifier, j'expédies les données dans un
respose.write c'est ok mais bon je ne veux pas de HTML, je veux les
expédier dans une variable et la le système me renvoi que le dernière mot.

Quelqu'un pourrait il me mettre sur la voie ou y a t'il un exemple pour ce
type de requête.

En vous remerciant par avance.



Karl Seguin [MVP]
Le #12206981
Une recommandation que j'ai est d'utiliser un StringBuilder pour "test".
Ajouter plusieus (5+) valeur a un string peut affecter la performance.

dim test as new StringBuilder()
...
test.Append("debut");
test.Append(infos);
test.Append("millieu");
...
test.Append("fin")

Label1.Text = test.ToString()

Karl

--
http://www.openmymind.net/
http://www.codebetter.com/


"Daniel" news:ukaK2Fb%
J'ai peu être trouvé, j'ai fait ça.

Dim test As String = ""
For Each Infos As String In Me.TextBox1.Text.Split(" ")
test &= "debut " & Infos & " milieu"
Next
test &= "fin"
Me.Label1.Text = test

Mais je reste à l'écoute, s'il existe un exemple de code pour un petit
moteur de recherche multi-mots et multi-champ.

Cordialement,

"Daniel" news: OY9bRja%
Bonjour,

Je travail su VS 2005 en vb.net et SQL.

J'aissais de créer un petit moteur de recherche qui avec plusieurs mots
dans
un textbox me renverrait les données. A peine démarré, j'ai déjà un
problème.

Je voulais faire un split sur ma textbox pour récupérer les différents
mots
et revoyer dans une variable en formatant le texte.

J'avais pensé à quelque chose de ce type.

Dim Format As String
Dim i As Integer
For Each Infos As String In Me.TextBox1.Text.Split(" ")
i = i + 1
Format = " (Nomdelacollone like % + " & Infos & " + %) and "
Next Infos
Dim Select as string = "Select * From mabase Where" & Format

Comme vous pouvez vous doutez ca ne marche pas, j'avou ne pas être trés
bon au niveau de boucle.
Dans mon For Each pour vérifier, j'expédies les données dans un
respose.write c'est ok mais bon je ne veux pas de HTML, je veux les
expédier dans une variable et la le système me renvoi que le dernière
mot.

Quelqu'un pourrait il me mettre sur la voie ou y a t'il un exemple pour
ce type de requête.

En vous remerciant par avance.







Daniel
Le #12206951
J'ai pris en conpte votre information que j'ai imédiatement mis dans mon
application.
Merci.

Mais maintenant j'ai un autre probléme.
Supprimer le dernier AND de ma chaine de carractére.

Cordialement,

"Karl Seguin [MVP]" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME
net> a écrit dans le message de news:
eqmw97b%
Une recommandation que j'ai est d'utiliser un StringBuilder pour "test".
Ajouter plusieus (5+) valeur a un string peut affecter la performance.

dim test as new StringBuilder()
...
test.Append("debut");
test.Append(infos);
test.Append("millieu");
...
test.Append("fin")

Label1.Text = test.ToString()

Karl

--
http://www.openmymind.net/
http://www.codebetter.com/


"Daniel" news:ukaK2Fb%
J'ai peu être trouvé, j'ai fait ça.

Dim test As String = ""
For Each Infos As String In Me.TextBox1.Text.Split(" ")
test &= "debut " & Infos & " milieu"
Next
test &= "fin"
Me.Label1.Text = test

Mais je reste à l'écoute, s'il existe un exemple de code pour un petit
moteur de recherche multi-mots et multi-champ.

Cordialement,

"Daniel" news: OY9bRja%
Bonjour,

Je travail su VS 2005 en vb.net et SQL.

J'aissais de créer un petit moteur de recherche qui avec plusieurs mots
dans
un textbox me renverrait les données. A peine démarré, j'ai déjà un
problème.

Je voulais faire un split sur ma textbox pour récupérer les différents
mots
et revoyer dans une variable en formatant le texte.

J'avais pensé à quelque chose de ce type.

Dim Format As String
Dim i As Integer
For Each Infos As String In Me.TextBox1.Text.Split(" ")
i = i + 1
Format = " (Nomdelacollone like % + " & Infos & " + %) and "
Next Infos
Dim Select as string = "Select * From mabase Where" & Format

Comme vous pouvez vous doutez ca ne marche pas, j'avou ne pas être trés
bon au niveau de boucle.
Dans mon For Each pour vérifier, j'expédies les données dans un
respose.write c'est ok mais bon je ne veux pas de HTML, je veux les
expédier dans une variable et la le système me renvoi que le dernière
mot.

Quelqu'un pourrait il me mettre sur la voie ou y a t'il un exemple pour
ce type de requête.

En vous remerciant par avance.











Karl Seguin [MVP]
Le #12206941
test.Remove(test.Length - 3, 3);

Maintenant que j'y pense, j'espaire que to va protèger ton code contre une
attack d'SQL injection.

Tu dois t'assurer que chaque "infos" n'est pas dangereux. Tu peus faire
test.Append(infos.Replace("'", "''") au minimum....

Karl

--
http://www.openmymind.net/
http://www.fuelindustries.com/


"Daniel" news:u83dfEc%
J'ai pris en conpte votre information que j'ai imédiatement mis dans mon
application.
Merci.

Mais maintenant j'ai un autre probléme.
Supprimer le dernier AND de ma chaine de carractére.

Cordialement,

"Karl Seguin [MVP]" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME
net> a écrit dans le message de news:
eqmw97b%
Une recommandation que j'ai est d'utiliser un StringBuilder pour "test".
Ajouter plusieus (5+) valeur a un string peut affecter la performance.

dim test as new StringBuilder()
...
test.Append("debut");
test.Append(infos);
test.Append("millieu");
...
test.Append("fin")

Label1.Text = test.ToString()

Karl

--
http://www.openmymind.net/
http://www.codebetter.com/


"Daniel" news:ukaK2Fb%
J'ai peu être trouvé, j'ai fait ça.

Dim test As String = ""
For Each Infos As String In Me.TextBox1.Text.Split(" ")
test &= "debut " & Infos & " milieu"
Next
test &= "fin"
Me.Label1.Text = test

Mais je reste à l'écoute, s'il existe un exemple de code pour un petit
moteur de recherche multi-mots et multi-champ.

Cordialement,

"Daniel" de news: OY9bRja%
Bonjour,

Je travail su VS 2005 en vb.net et SQL.

J'aissais de créer un petit moteur de recherche qui avec plusieurs mots
dans
un textbox me renverrait les données. A peine démarré, j'ai déjà un
problème.

Je voulais faire un split sur ma textbox pour récupérer les différents
mots
et revoyer dans une variable en formatant le texte.

J'avais pensé à quelque chose de ce type.

Dim Format As String
Dim i As Integer
For Each Infos As String In Me.TextBox1.Text.Split(" ")
i = i + 1
Format = " (Nomdelacollone like % + " & Infos & " + %) and "
Next Infos
Dim Select as string = "Select * From mabase Where" & Format

Comme vous pouvez vous doutez ca ne marche pas, j'avou ne pas être trés
bon au niveau de boucle.
Dans mon For Each pour vérifier, j'expédies les données dans un
respose.write c'est ok mais bon je ne veux pas de HTML, je veux les
expédier dans une variable et la le système me renvoi que le dernière
mot.

Quelqu'un pourrait il me mettre sur la voie ou y a t'il un exemple pour
ce type de requête.

En vous remerciant par avance.















Daniel
Le #12206921
Ca marche, impecable avec -4 (a cause de l'espace).

C'est la que l'on voie que les MVP ont un niveau au dessus. Je ne désepére
pas d'y arrivé, mais je programme trop irréguliérement.

Bien à vous.

"Karl Seguin [MVP]" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME
net> a écrit dans le message de news:
eGDAaic%
test.Remove(test.Length - 3, 3);

Maintenant que j'y pense, j'espaire que to va protèger ton code contre une
attack d'SQL injection.

Tu dois t'assurer que chaque "infos" n'est pas dangereux. Tu peus faire
test.Append(infos.Replace("'", "''") au minimum....

Karl

--
http://www.openmymind.net/
http://www.fuelindustries.com/


"Daniel" news:u83dfEc%
J'ai pris en conpte votre information que j'ai imédiatement mis dans mon
application.
Merci.

Mais maintenant j'ai un autre probléme.
Supprimer le dernier AND de ma chaine de carractére.

Cordialement,

"Karl Seguin [MVP]" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME
net> a écrit dans le message de news:
eqmw97b%
Une recommandation que j'ai est d'utiliser un StringBuilder pour "test".
Ajouter plusieus (5+) valeur a un string peut affecter la performance.

dim test as new StringBuilder()
...
test.Append("debut");
test.Append(infos);
test.Append("millieu");
...
test.Append("fin")

Label1.Text = test.ToString()

Karl

--
http://www.openmymind.net/
http://www.codebetter.com/


"Daniel" news:ukaK2Fb%
J'ai peu être trouvé, j'ai fait ça.

Dim test As String = ""
For Each Infos As String In Me.TextBox1.Text.Split(" ")
test &= "debut " & Infos & " milieu"
Next
test &= "fin"
Me.Label1.Text = test

Mais je reste à l'écoute, s'il existe un exemple de code pour un petit
moteur de recherche multi-mots et multi-champ.

Cordialement,

"Daniel" de news: OY9bRja%
Bonjour,

Je travail su VS 2005 en vb.net et SQL.

J'aissais de créer un petit moteur de recherche qui avec plusieurs
mots dans
un textbox me renverrait les données. A peine démarré, j'ai déjà un
problème.

Je voulais faire un split sur ma textbox pour récupérer les différents
mots
et revoyer dans une variable en formatant le texte.

J'avais pensé à quelque chose de ce type.

Dim Format As String
Dim i As Integer
For Each Infos As String In Me.TextBox1.Text.Split(" ")
i = i + 1
Format = " (Nomdelacollone like % + " & Infos & " + %) and "
Next Infos
Dim Select as string = "Select * From mabase Where" & Format

Comme vous pouvez vous doutez ca ne marche pas, j'avou ne pas être
trés bon au niveau de boucle.
Dans mon For Each pour vérifier, j'expédies les données dans un
respose.write c'est ok mais bon je ne veux pas de HTML, je veux les
expédier dans une variable et la le système me renvoi que le dernière
mot.

Quelqu'un pourrait il me mettre sur la voie ou y a t'il un exemple
pour ce type de requête.

En vous remerciant par avance.



















Publicité
Poster une réponse
Anonyme