Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 12:47:16 - Joakim Lamkiewicz, i forum asp - allmänt, Tråden har 11 Kommentarer och lästs av 558 personer

Är det någon som ser något fel (eller kan skriva om) följande rad till en sökmotorfunktion:

SearchKeywords.Source = "SELECT ID, PageHeadline, PageKeywords, PageDescription FROM Page WHERE PageKeywords LIKE '%" & Replace(Replace(SearchKeywords__MMColParam, "'", "''")," ","%") & "%'"

Vid sökning på en sida som har inlagda sökorden "om oss" uppstår felet om man söker på ex "om och oss". Ger ingen träff. Skiver man "om" funkar det, skriver man "oss" funkar det och likaså om man söker på "om oss". Men inte så fort man lägger till ett annat ord som inte finns med. Har frågat om detta tidigare men hoppas på ny hjälp. Tidigare inlägg finns här http://www.pellesoft.se/development/forum/view.asp?msgid=88843&forumid=1&sum=1 och fullständig kod för sidan jag har problem finns på http://www.lamko.nu/temp/kod.txt

tack!


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 13:26:20 - Johan Hultgren

Om strängen "om och oss" inte finns med i PageKeywords så får du naturligtvis inte heller någon träff.

Du får bygga upp din SQL-fråga så att den söker efter varje ord och ger en träff om något av orden finns med.

SELECT * FROM tabell WHERE kolumn LIKE '%om%' OR kolumn LIKE '%och%' OR kolumn LIKE '%oss%'

/Johan


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 13:28:08 - Per Hultqvist

Kolumner med namnet ID brukar i MS SQL-QueryAnalyzer bli blåmarkerat dvs det är ett keyword i SQL. Prova att skriv : "SELECT [ID],..." i ställer, dvs klamrar runt ID. Är inte säker på att det är detta som är problemet, men värt ett försök i alla fall...


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 13:39:20 - Joakim Lamkiewicz

tack johan!

nä, det är sant men trodde att man skulle få träff om något av orden fanns med, inte exakt fras.

Är man jobbig om man frågar efter en färdig kodsnutt utifrån min selectsats ovan?
Får inte till det enligt dina instruktioner/ditt exempel.
Hur skriver man en sån rad, man vet ju inte på förhand hur många sökord besökaren använder.

tack igen!


Till Per:
Tack för ditt svar, men detta påverkade inte.


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 13:57:54 - Jonas Sjöblom

soktext = request.form("soktext")
sokord = split(soktext," ")

<code>
for index = 0 to ubound(sokord)
if sok = "" then
sok = "kolumn like '" & sokord(index) & "'"
else
sok = sok & " OR kolumn like '" & sokord(index) & "'"
end if
next

SQL = "SELECT * FROM tabell WHERE " & sok
</code>


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 13:59:24 - Hobil Haidari

om alla sökorden finns i Request form, så är förslaget, kör en SPLIT() på mellanslag, då får du en vektor med de olika sökorden som resultat.

Sen är det bara att iterera igenom dem såhär
<code>
SQL = "SELECT * FROM tbl WHERE"
'Iteration så länge vektorn inte är slut (UBound())
For i To UBound(arr)
If i=1 Then
SQL = SQL & " PageKeyWords LIKE '%" & Replace(Replace(SearchKeywords__MMColParam, "'", "''")," ","%") & "%'"
Else
SQL = SQL & " OR PageKeyWords LIKE '%" & Replace(Replace(SearchKeywords__MMColParam, "'", "''")," ","%") & "%'"
End If

i = i + 1
Next


</code>


hehe, snyggt förslag ZeToc ;o) hann inte se det innan jag posta själv


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 14:27:48 - Joakim Lamkiewicz

Tack för förslagen!

Är tyvärr inte tillräckligt kunnig inom asp för att förstå var era kodexempel skall läggas in(zetocs kod till exempel), eller vad jag måste byta ut i min existerande kod. Någon som vill/kan visa hur det skall se ut i min existerande kod?

koden:
http://www.lamko.nu/temp/kod.txt

Vore väldigt tacksam om så vore!!


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 16:03:57 - Johan Hultgren

Typ så här:

<code>
16 Set SearchKeywords = Server.CreateObject("ADODB.Recordset")
17 SearchKeywords.ActiveConnection = MM_IPE_STRING
18 SearchKeywords.Source = "SELECT ID, PageHeadline, PageKeywords, PageDescription FROM Page WHERE "
19
20 Dim keywords
21 keywords = Split(Replace(SearchKeywords__MMColParam, "'", "''"), chr(32))
22
23 for i = 0 to ubound(keywords)
24 SearchKeywords.Source = SearchKeywords.Source & "PageKeywords LIKE '%" & keywords(i) & "%'"
25 if i < (ubound(keywords)-1) then
26 SearchKeywords.Source = SearchKeywords.Source & " or "
27 end if
28 next
</code>

/Johan


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 16:18:03 - Hobil Haidari

Johans tips funkar alldeles utmärkt, men när man ändå skriv ihop två rader är det lika bra att lägga upp dem, följande går oxo bra
Sen sätter du bara Seach
<code>
Dim SearchKeywords
Dim SearchKeywords_numRows
'===================================
' Lägg in följande direkt efter dina deklarationer
' Start
Dim arrSearchKeywords
Dim iCounter
Dim SQL

arrSearchKeywords = Split(SearchKeywords__MMColParam," ")

For iCounter = 0 to Ubound(arrSearchKeywords)
' Första posten i vektorn skall inte ha OR sats
If iCounter = 0 then
SQL = "SELECT ID, PageHeadline, PageKeywords, PageDescription FROM Page WHERE PageKeywords LIKE '%" & Replace(Replace(arrSearchKeywords(iCounter), "'", "''")," ","%") & "%'"
Else
SQL = SQL & " OR PageKeywords LIKE '%" & Replace(Replace(arrSearchKeywords(iCounter), "'", "''")," ","%") & "%'"
End If
Next
'===================================
' End

</code>

Glöm inte att sätta SearchKeywords.Source till SQL värdet som vi bygger ihop här ovan
SearchKeywords.Source = SQL


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 17:52:34 - Jonas Sjöblom

Lamko: Byt ut din SQL stats mot den jag skrev bara så ska det funka


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-27 22:23:27 - Andreas Hillqvist

Alternativ lösning där du slipper loop:
<code>
Dim SearchKeywords
Dim SearchKeywords_numRows
Dim SearchKeywords__MMColParam
Dim arrSearchKeywords
Dim strSQL

SearchKeywords__MMColParam = "Ord1 Ord2 Ord3"
SearchKeywords__MMColParam = Replace(SearchKeywords__MMColParam, "'", "''")
arrSearchKeywords = Split(SearchKeywords__MMColParam, " ")
strSQL = "PageKeywords LIKE '%" & Join(arrSearchKeywords, "%' AND PageKeywords LIKE '%") & "%'"
</code>


:P


Svara

Sv: Är tjatig, men gärna få löst sökmotorproblem!

Postades av 2003-05-29 09:51:53 - Joakim Lamkiewicz

Vill tacka alla för hjälpen i detta ärende (som jag för övrigt postat 2 gånger i forumet).
Jag har nu äntligen fått ordning på sökmotorn, först med vissa exempel härifrån som grund och sedan utveckling/hjälp från 2 vänner.

Som jag nämnt tidigare så tycker jag att det väldigt kul att se att så många är villiga att hjälpa till när man slänger ut ett problem via ett forum. En eloge till dom som engagerade sig!

Tack igen!

PS. För de nyfikna kommer denna sökmotor att finnas på en sajt för "Info Point Europa" inom kort. Den ligger inte online just nu, men inom några dagar kommer den att finnas tillgänglig på www.ipe.se. Är någon sen intresserad av att se lösningen bakom sökmotorn så kan ni höra av er till mig via Pellesoft.


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 799
27 960
271 761
2 888
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies