[asp]indexserver, link met spatie breekt af

Pagina: 1
Acties:

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 30-08 21:44
Hoi,

heb eindelijk een goed c.q. simpel script om een zoekactie mbv asp en IndexServer uit te voeren.

ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<%
Set objQuery = Server.CreateObject("ixsso.query")
Set objUtil = Server.CreateObject("ixsso.util")
my_keyword=request("keyword")
myquery=myquery & my_keyword 

myquery=myquery & " and not #filename indexmaster.asp"
myquery=myquery & " and not #filename index.asp"
myquery=myquery & " and not #filename indexold.asp"
myquery=myquery & " and not #filename *.|(txt|,inc|,mdb|,cnt|,class|,toc|,css|,asp|)"

objQuery.Query=myQuery
objQuery.Columns = "Vpath, DocTitle, Filename, Characterization, Rank"
objQuery.SortBy = "Rank [d]"
objQuery.MaxRecords = 100
objquery.catalog="ccIntranet"
objquery.LocaleID = objutil.ISOToLocaleID("EN-US")
Set rstemp = objQuery.CreateRecordSet("nonsequential")
if rsTemp.EOF then
response.write "Niks gevonden"
else
Do While Not rsTemp.EOF
VarVPath = rsTemp("Vpath")
VarDocTitle = rsTemp("DocTitle")
VarFileName = rsTemp("Filename")
VarCharacter = rsTemp("Characterization")
VarContents = rsTemp("Contents")
VarRank = rsTemp("Rank")
response.write VarVPath&"<br>"
response.write VarDoctitle&"<br>"
response.write VarFileName&"<br>"
%>

Als ik nu bij de "response.write VarVpath" kijk, zie ik netjes bijvoorbeeld het volgende staan:
code:
1
isodocs/0018_ac1 afdelingsbeschrijving drukkerij.pdf

Maar als ik daar nu een link van wil maken krijg ik dit in mijn href:
code:
1
http://192.168.1.208/isodocs/0018_ac1

Zoals je ziet wordt de link afgekapt na de spatie. Ik snap eigenlijk alleen niet waarom? Je kan toch in een href een simpele spatie stoppen?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 10:19

D2k

urlencoden?
dus dat de spatie een %20 wordt

Doet iets met Cloud (MS/IBM)


  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 25-07 18:17

Skinny

DIRECT!

Spaties zijn inderdaad officieel niet toegestaan in URL's. Dat Internet Explorer (e.a.) dit wel toestaan en het probleem voor de gebruiker afschermen doet niets af aan de standaard.

SIZE does matter.
"You're go at throttle up!"


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 30-08 21:44
d2k: heb het geprobeerd met een URL-encode (zelfs ook met HTML-encode), maar dan kan ie het file niet vinden.
Als ik trouwens vanuit asp url-encode krijg ik voor de spatie een + :?

het gaat dus om een link naar een fysiek PDF document.

als ik onderstaande code probeer doet ie het wel:
ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
linebr="<br>" & vbcrlf
Set rstemp = objQuery.CreateRecordSet("nonsequential")
      DO UNTIL rstemp.eof
      FOR EACH key in rstemp.fields
         keyname=lcase(key.name)
         SELECT CASE keyname
            CASE "vpath"
               response.write "<a href='"
               response.write key
               response.write "'>" & key & "</a>" & linebr
            CASE ELSE
               response.write "<b>" & keyname & ":</b>" & linebr 
               response.write key & linebr
         END SELECT
      NEXT
      response.write "<br><hr>"
       rstemp.movenext
      LOOP
      ' clean up
      rstemp.close
      set rstemp=nothing
   Set objQuery = nothing
   Set objUtil = nothing
%>

Maar die code wil ik niet, vind te lang en eigenlijk een beetje onoverzichtelijk.

/edit:

Dan maar ranzig dmv:
ASP:
1
VarVpath = Replace(VarVpath, " ", "%20")

werkt perfect :+

Heart..pumps blood.Has nothing to do with emotion! Bored