Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Sonderzeichen (plus) per URL übergeben

Frage Entwicklung VB for Applications

Mitglied: ReiniX

ReiniX (Level 1) - Jetzt verbinden

31.10.2007, aktualisiert 16:23 Uhr, 7921 Aufrufe, 4 Kommentare

Hallo.

Ich will eine Seite mit einem Parameter aufrufen in dem ein Pluszeichen enthalten ist:
tele.asp?nr=+49
da das so wohl nich ganz hin haut mach ich das so:
tele.asp?nr=%2B49

wenn ich mir diese variable nun anzeigen lasse klappt das auch soweit ganz gut:
01.
dim callnr 
02.
callnr=Request.QueryString("nr") 
03.
response.write callnr
gibt aus: +49

nun möchte ich das ganze aber mit einem vbscript weiterverarbeiten:
01.
Sub window_onLoad() 
02.
	callnumber=<%=callnr%> 
03.
	ThisForm.Number.Value=callnumber  
04.
end sub
In meinem textfeld steht jetzt allerdings nur: 49 ... das plus ist verloren gegangen.
Wie übergebe ich das richtig?

(Bitte kommt mir nicht mit der lösung einfach <%=callnr%> als value für das textfeld anzugeben ... der code hier ist nur vereinfacht ... ich mache noch einiges mehr mit der nummer bevor sie ins textfeld kommt)

vielen dank,
reinix
Mitglied: bastla
31.10.2007 um 13:36 Uhr
Hallo ReiniX!

Das "+" wird wegen der impliziten Konvertierung in eine Zahl weggelassen, daher müsstest Du es gezielt wieder setzen, etwa
01.
If Left(callnumber, 1) <> "0" Then 
02.
	ThisForm.Number.Value="+" & CStr(callnumber) 
03.
Else 
04.
	ThisForm.Number.Value=callnumber 
05.
End If
Damit würden alle nicht mit 0 beginnenden Nummern ein vorangestelltes "+" erhalten. Einfacher (und genauer) wäre es, bereits vorweg den richtigen Datentyp ("String") zu verwenden, was allerdings von VBS nicht unterstützt wird - ob dies bereits (im "ASP-Teil") durch ein
01.
dim callnr as string
möglich ist (und von VBS auch noch so übernommen wird), müsstest Du testen.

Grüße
bastla
Bitte warten ..
Mitglied: ReiniX
31.10.2007 um 14:07 Uhr
oke danke erstmal.
01.
dim callnr as string
Das im ASP-Teil haut nicht hin. Da spucker er mir als fehler aus: Anweisungsende erwartet

01.
If Left(callnumber, 1) <> "0" Then 
02.
	ThisForm.Number.Value="+" & CStr(callnumber) 
03.
Else 
04.
	ThisForm.Number.Value=callnumber 
05.
End If
Das ist schon um einiges besser um nicht zu sagen fast perfekt!
Das blöde ist nur: es wird nicht immer ein + übergeben.
(an meine seite werden telefonnummern übergeben. das können telefonnummern ins ausland sein (+43....), telefonnummern mit vorwahl (07123...) oder hausinterne nummern (123) )
wenn ich die seite jetzt mit test.asp?nr=123 aufrufe erhalte ich blöderweise ein +123 anstatt nur 123.

hast du dafür vielleicht auch noch eine lösung parat?

mfg
reinix
Bitte warten ..
Mitglied: bastla
31.10.2007 um 14:20 Uhr
Hallo ReiniX!

Du könntest noch die Länge der Nummer zum Kriterium machen, also etwa ab 7 Zeichen das "+" voranstellen:
01.
If Left(callnumber, 1) <> "0" And Len(callnumber) >= 7 Then 
02.
	ThisForm.Number.Value="+" & CStr(callnumber) 
03.
Else 
04.
	ThisForm.Number.Value=callnumber 
05.
End If
Grüße
bastla
Bitte warten ..
Mitglied: ReiniX
31.10.2007 um 16:23 Uhr
bin mir nicht im klaren darüber wie schön oder unschön ich diese lösung finden soll...
aber grade beim löcher in die luft strarren, habe ich mich gefragt ob ich nicht einfach mal versuchen soll, asp den url-parameter in ein verstecktes textfeld schreiben zu lassen und ihn dann von dort mit vbscript auszulesen.
habs mal getestet und es funktioniert wie ich mir das vorstelle

dankeschööön trotzdem!
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(2)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

LAN, WAN, Wireless
gelöst Statische Routen mit ISC-DHCP Server für Android Devices (22)

Frage von terminator zum Thema LAN, WAN, Wireless ...

Exchange Server
gelöst Migration Exchange 2007 zu 2013 - Public Folder teilweise weg (16)

Frage von Andy1987 zum Thema Exchange Server ...