Avatar billede pfp Nybegynder
14. marts 2003 - 20:20 Der er 10 kommentarer og
1 løsning

Funktion der sikret http://

Hej,

Når en bruger indtaster en URL som jeg vil gemme i en database vil jeg gerne sikre at der er http:// foran. Den skal ikke melde fejl hvis der ikke er, men deriomod selv tilføje det hvis det mangler.

Er der nogen der har det liggende som en funktion? (ikke bare som et script).
Avatar billede grunken Nybegynder
14. marts 2003 - 21:28 #1
har lige lavet den her :)

<%

Function web(Link)
  If (left(link,7) = "http://") Then
    Link = Link
  else
    Link = "http://" + Link
  End If
  Response.write Link
End Function

streng = "www.eksperten.dk"

web(streng)
%>

-grunken
Avatar billede grunken Nybegynder
14. marts 2003 - 21:46 #2
nej må hellere lave den ordentligt :)

<%
Function web(Link)
  If (left(link,7) = "http://") Then
    Link = Link
  else
    Link = "http://" + Link
  End If
  web = Link
End Function

streng = "www.eksperten.dk"
response.write web(streng)
%>
Avatar billede pfp Nybegynder
14. marts 2003 - 23:23 #3
Tak. Læg et svar
Avatar billede tuxic Nybegynder
14. marts 2003 - 23:24 #4
dvs hvis Link er http:/ bliver web(Link) = http://http:/
Avatar billede pfp Nybegynder
14. marts 2003 - 23:31 #5
tuxic -> Ja det er korrekt. Jeg går ikke ud fra man kan gøre noget for at forhindre det.
Avatar billede excession Nybegynder
15. marts 2003 - 01:18 #6
jo du kunne jo validere linket..
Avatar billede grunken Nybegynder
15. marts 2003 - 02:54 #7
svar :)
Avatar billede pfp Nybegynder
15. marts 2003 - 08:59 #8
excession -> Vil du give et hint mere?
Avatar billede grunken Nybegynder
16. marts 2003 - 17:18 #9
Har leget lidt med det, og nedenstående burde samtidig korigere de mest forekomne indtastningsfejl :

<%
Function Max(input)
    Dim I
    Dim Highest
    Highest = Null

    For I = LBound(input) to UBound(input)
        If IsNumeric(input(I)) Then
            If CDbl(input(I)) > Highest Or IsNull(Highest) Then
                Highest = CDbl(input(I))
            End If
        End If
    Next
    Max = Highest

End Function

Function web(Link)

  Check1 = InStr(1, Link, "www")
  Check2 = (InStr(1, Link, "http") + 3)
  Check3 = InStr(1, Link, ":")
  Check4 = InStr(1, Link, "/")
  Check5 = InStr(1, Link, "//")
  Length = int(len(Link) + 1)

if InStr(1, Link, ".") > 0 Then
  If (left(link,7) = "http://") Then
    Link = Link
  elseIF (Check1>0) Then
    Link = "http://" + Mid(Link, Check1, Length-Check1)
  elseIf ((check2>3) Or (check3>0) Or (Check4>0) Or ((check5+1)>1)) Then
    str = (Check2) & "," & (Check3) & "," & (Check4) & "," & (Check5+1)
    Start = Split(str, ",", -1, 1)
    Link = "http://" + Mid(Link, (Max(Start)+1), Length-(Max(Start)+1))
  else
    Link = "http://" + Mid(Link, 1, Length-1)
  End If
  web = Link
End If
  web = Link
End Function

streng = "http:/eksperten.dk"
response.write web(streng)

-grunken
%>
Avatar billede pfp Nybegynder
16. marts 2003 - 17:34 #10
Det var da rigtig lækkert det der! Tusind tak.
Avatar billede grunken Nybegynder
16. marts 2003 - 17:45 #11
så lidt :)
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