![]() |
Jag har gjort ett referrer-script i ASP och har en ganska jobbig lösning för att filtrera bort URL:er som jag inte vill ska länkas på sajten. I dagsläget ser den ut så här:
Kod:
url = TILLFIXAD Request.ServerVariables("HTTP_REFERER") Kod:
If url <> iLista Then Är det någon som har en smidig lösning på hur man kan "loopa" igenom en lista för att jämföra varje besök från en annan sajt? |
Kan du inte lagra de urler du vill filtrera bort i en databas?
Det känns som den bästa lösningen. |
Känns nästan som att en array vore som den lättaste lösningen. Sen skulle jag nog kört med en InStr istället för att kolla exakt.
Typ såhär. strFilter = "www.sida1.se,www.sida2.se,www.sida3.se" arrFilter = Split(strFilter,",") For i = 0 To UBound(arrFilter) If InStr(1, url, arrFilter(i)) > 0 Then Mata in i databasen End If Next Eller kanske Utan loop, borde också funka. strFilter = "www.sida1.se,www.sida2.se,www.sida3.se" If InStr(1, strFilter, url) > 0 Then End If |
Som tidigare nämns, databas vore det lämpligaste. Annars kan du använda Knallis förslag men istället för att fylla strängen strFilter direkt i koden så kan du lagra alla domäner i en textfil som du sen läser in och lagrar i strFilter. Då behöver du bara ändra i textfilen när du vill lägga till eller tabort en domän.
|
Tack för era tips, jag lyckades lösa problemet såhär:
ReadTextFile.asp Kod:
<% Kod:
<%referer = Request.ServerVariables("HTTP_REFERER") |
Varför använder du inte databasen till allt jobb och lägger till en IN eller snarare en NOT IN sats bara?
Ett litet tips är också att indentera koden. |
Citat:
Koden är indenterad, det är WN som tar bort alla intabbningar. Ser dock att några blanksteg finns kvar här och där. |
Citat:
|
Så här löste jag det med databas istället. Synpunkter och förbättringsförslag av koden välkomnas.
Kod:
<%referer = Request.ServerVariables("HTTP_REFERER") |
Alla tider är GMT +2. Klockan är nu 12:45. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson