Avatar billede soenderup Nybegynder
12. september 2001 - 16:06 Der er 6 kommentarer og
1 løsning

modsat URLEncode()?

Findes der ikke en \"anti\" URLEncode() ??

/Sønderup
Avatar billede limemedia Nybegynder
12. september 2001 - 16:08 #1
URLDecode() evt.

findes i PHP :) try it
Avatar billede sone Nybegynder
12. september 2001 - 16:11 #2
Det burde du ikke have brug for. Når du trækker noget fra URL\'en, så skulle det automatisk være dekodet.
Avatar billede soenderup Nybegynder
12. september 2001 - 16:13 #3
sone::

Jo... for jeg ville bruge den til at løse problemet beskrevet i: http://www.eksperten.dk/spm/108706
Avatar billede aaen Nybegynder
12. september 2001 - 16:34 #4
Function URLDecode(Byval What)
\'URL decode function
\'2001 Antonin Foller, PSTRUH Software, http://www.pstruh.cz
  Dim Pos, pPos

  \'replace + to space
  What = Replace(What, \"+\", \" \")

  On Error Resume Next
  Dim Stream: Set Stream = CreateObject(\"ADODB.Stream\")
  If Err = 0 Then \'URLDecode using ADODB.Stream, if possible
    On Error Goto 0
    Stream.Type = 2 \'String
    Stream.Open

    \'replace all %XX to character
    Pos = Instr(1, What, \"%\")
    pPos = 1
    Do While Pos > 0
      Stream.WriteText Mid(What, pPos, Pos - pPos) + _
        Chr(CLng(\"&H\" & Mid(What, Pos + 1, 2)))
      pPos = Pos + 3
      Pos = Instr(pPos, What, \"%\")
    Loop
    Stream.WriteText Mid(What, pPos)

    \'Read the text stream
    Stream.Position = 0
    URLDecode = Stream.ReadText

    \'Free resources
    Stream.Close
  Else \'URL decode using string concentation
    On Error Goto 0
    \'UfUf, this is a little slow method.
    \'Do not use it for data length over 100k
    Pos = Instr(1, What, \"%\")
    Do While Pos>0
      What = Left(What, Pos-1) + _
        Chr(CLng(\"&H\" & Mid(What, Pos+1, 2))) + _
        Mid(What, Pos+3)
      Pos = Instr(Pos+1, What, \"%\")
    Loop
    URLDecode = What
  End If
End Function
Avatar billede sone Nybegynder
12. september 2001 - 16:35 #5
Har svaret på spm. - ved den løsning, så skal du ikke bruge decode
Avatar billede aaen Nybegynder
12. september 2001 - 16:35 #6
Eller en knap så avanceret form:

Private Function URLDecode(Expression)
  \'Why doesn\'t ASP provide this functionality for us?
  Dim strSource, strTemp, strResult
  Dim lngPos
  strSource = Replace(Expression, \"+\", \" \")
  For lngPos = 1 To Len(strSource)
    strTemp = Mid(strSource, lngPos, 1)
    If strTemp = \"%\" Then
      If lngPos + 2 < Len(strSource) Then
        strResult = strResult & _
            Chr(CInt(\"&H\" & Mid(strSource, lngPos + 1, 2)))
        lngPos = lngPos + 2
      End If
    Else
      strResult = strResult & strTemp
    End If
  Next
  URLDecode = strResult
End Function             
Avatar billede fidusen Nybegynder
21. december 2001 - 01:36 #7
Aaens anden udgave virker ikke for mig. Men det gør den første, lange udgave.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester