2012-04-03 1 views

Antwort

1

Ich kann nicht glauben, dass ich das getan habe. ASP-Klassiker ist meine erste Web-Programmierung Liebe so hatte ich

<% 

URL="http://www.rzammit.com/pages/linux-form.asp?adv=101&loc=349&websync=ert4545445&put=4563" 


Response.write ("adv = " + GetVarValue(URL, "adv")) 
response.write("<br>") 
Response.write ("loc = " + GetVarValue(URL, "loc")) 
response.write("<br>") 
Response.write ("adv = " + GetVarValue(URL, "websync")) 
response.write("<br>") 
Response.write ("gput = " + GetVarValue(URL, "gput")) 
response.write("<br>") 
Response.write ("put = " + GetVarValue(URL, "put")) 
response.write("<br>") 

%> 

<br><br><br> 



<% 
function GetVarValue(Source, VarName) 
    pos1 = instr(source, varname + "=") 

'to check if the variable was not found 
    if pos1=0 then 
     GetVarValue="Not Found!!!" 
     exit function 
    end if 

    pos1 = pos1 + len(varName) + 1 

    pos2=instr(mid(source,pos1), "&")-1 


'to check if it was the last variable 
    if pos2=-1 then 
     str1 = mid(source, pos1) 
    else 
     str1 = mid(source, pos1, pos2) 
    end if 
    GetVarValue=str1 



End Function 

%> 

Mit dieser Funktion in Ihrer Seite :) Sie, indem Sie den Variablennamen und URL-Zeichenfolge an GetVarValue jede Variable abfragen!

(PS: Wenn diese Antwort funktioniert, diese Antwort akzeptieren, wird es Wunder zu meinem Repo Stackoverflow tun :))

+0

Weiter so, Mann :) du bist großartig. Kann ich bitte Ihre Email oder Skype haben? –

+0

[email protected] - Ich hoffe, dass das Teilen persönlicher Informationen hier nicht verboten ist: $ –

3

Behandle den sRef als String und benutze Mid, um die Werte zu erhalten. Der folgende Code sollte ein Ausgangspunkt sein, um dorthin zu gelangen, wo du hin willst!

<% 
sRef="http://www.rzammit.com/pages/linux-form.asp?adv=101&loc=349" 

a=instr(sRef, "adv")+4 
b=instr(sRef, "&loc") 

response.write(mid(sRef ,a,b-a)) 
response.write("<br>") 
response.write(mid(sRef ,b+5)) 

%> 
+0

das funktioniert nicht:/ –

+0

Ich habe es vor dem Posten getestet und wieder jetzt - es funktioniert hier. Welchen Fehler gibt es in Ihrer Instanz? –

+0

Ich verwende den folgenden Code Sref = encode (Request.ServerVariables ("HTTP_REFERER")) a = Instr (Sref "adv") + 4 (Ich bin IADV und iLoc mit wiederkehr Werte zuweisen) b = instr (SREF "& loc") IADV = mid (Sref, a, ba) iLoc = mid (Sref, b + 5) –

0

einen Regexp und ein Wörterbuch verwendet strukturierte Informationen aus einer Zeichenfolge zu extrahieren:

>> Dim s : s = "http://www.rzammit.com/pages/linux-form.asp?adv=101&loc=349" 
>> Dim d : Set d = getKVP(s) 
>> WScript.Echo "loc =", d("loc") 
>> WScript.Echo "adv =", d("adv") 
>> Function getKVP(s) 
>> Dim r, d, m 
>> set r = New RegExp 
>> r.Global = True 
>> r.Pattern = "(\w+)=(\w+)" 
>> set d = CreateObject("Scripting.Dictionary") 
>> For Each m In r.Execute(s) 
>>  d(m.SubMatches(0)) = m.SubMatches(1) 
>> Next 
>> Set getKVP = d 
>> End Function 
>> 
loc = 349 
adv = 101 

Sie müssen möglicherweise mit dem vereinfachten Muster basteln, aber dieser Ansatz skaliert viel besser als die Instr.