vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ASP.NET, WebServices u. Remoting
Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: ModeratorDaveS (Moderator)
Datum: 15.07.11 09:05

Und Sinn deines Beitrags, außer wie üblich besserwißerisch sein zu wollen?

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Tomahawk
Datum: 11.07.11 15:20

Moin moin,

beim Anpassen einer klassischen Index.asp (zur Anmeldung am CMS) möchte ich noch ein Prüfung auf IP-Adresse einbauen. Dieser Block hat in diversen anderen Internetseiten keine Probleme verursacht. Es wird nur geschaut ob der Aufrufer Request.ServerVariables("Remote_Addr") auch in der Datenbank enthalten ist (also das CMS nutzen darf).
Es erscheint aber ein völlig anderes merkwürdiges: Der Benutzername, den ich über Request.Form("Username2") auslese, wird ohne die Umlaute eingelesen. Also wenn der Benutzer sich mit dem Benutzernamen "Möller" anmeldet, ließt die ASP-Seite "Mller" aus. Warum? Entferne ich diesen kleinen Block mit der Prüfung auf IP-Adresse, funzt es wieder einwandfrei. Es ist nur etws VB-Code, den ich hinzugefügt habe. Am restlich Konstrukt habe ich nix geändert.
Hat jemand schon einmal dieses Phänomen gehabt?

Die Zeit ist der größte Feind des Menschen.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Drapondur
Datum: 11.07.11 18:11

Ist das auch wirklich ASP.NET oder klassisches ASP?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Tomahawk
Datum: 11.07.11 21:16

Es handelt sich um ASP, NICHT um ASP.NET! Das sagt die Dateiendung aber auch aus.

Die Zeit ist der größte Feind des Menschen.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: ModeratorDaveS (Moderator)
Datum: 11.07.11 21:30

Aber dieses Forum ist für Asp.Net, was ziemlich anders ist. Vielleicht solltest du die Frage in ein Asp Forum posten. Solche Probleme sind meistens auf die Verwendung von falschen Zeichensätzen zurückzuführen. Siehe zB hier.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Drapondur
Datum: 11.07.11 21:56

Hi,

schlecht geschlafen heut' nacht?

1. Soll schonmal vorgekommen sein, dass Leute den Unterschied nicht kennen oder aus welchen Gründen auch immer das ".NET" weglassen.

2. ".NET" ist in diesem Zusammenhang keine Dateiendung.

3. Wenn für Dich die "Dateiendung" so eindeutig ist, warum postest Du Deine Frage in einem Forum für ASP.NET und wunderst Dich dann, dass man Dich fragt?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: ModeratorDaveS (Moderator)
Datum: 11.07.11 22:03

Er meinte glaube ich Index.asp im ersten Beitrag. Man muss einen scharfen Blick haben...

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Drapondur
Datum: 11.07.11 22:22

Okay, ich geb's zu. Das steht sogar "klassischen Index.asp".

@Tomahawk: Entschuldige bitte, da hätte ich wohl genauer lesen sollen. Es war wohl ich, der schlecht geschlafen hat...

Ciao
D.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Tomahawk
Datum: 12.07.11 07:39

:,-(
Alle hacken sie gleich auf mir rum! Ja, habe gut geschlafen...
...doch das Problem bleibt weiterhin bestehen. Der Link von DaveS bzgl. der verschwundenen Zeichen bezieht sich auf ASP.NET.

HILFE! Wie kann ein zusätzlicher Code-Block (Nur Datenbankverbindung zum MySQL herstellen, prüfen ob IP-Adresse enthalten ist und ggf. anderes Redirect durchführen) dafür sorgen dass in der ganzen ASP-Datei keine Sonderzeichen mehr aus dem Request.Form("Feldname") gelesen werden?!! Werde den Code-Block jetzt nach und nach verkleinern und hoffe dass damit die verursachende Zeile aufleuchtet.

Die Zeit ist der größte Feind des Menschen.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: ModeratorDaveS (Moderator)
Datum: 12.07.11 09:20

Es geht im MS Link auch um ASP und ich kann mir vorstellen, dass das Problem bei dir sehr ähnlich ist. Dass das wirklich mit irgendwelcher DB Abfrage zusammenhängt halte ich für unwahrscheinlich. Wie immer, das Forum hier ist für Asp.Net und nicht für Asp, man sollte nicht erwarten das jemand hier das uralte asp überhaupt kennt, und wir kennen deinen Code und die Anwendung auch gar nicht, womit das Problem bestimmt zusammenhängt.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Franki
Datum: 15.07.11 01:05

Hallo DaveS

Zitat:

man sollte nicht erwarten das jemand hier
das uralte asp überhaupt kennt,


Das sehe ich nicht so, ich z.B. kenne ClassicASP seit es das gibt. Ich glaube auch nicht, dass es hier nur Leser gibt die erst mit dem Programmieren angefangen haben seit es .NET gibt.

Viele Leute sind halt umgestiegen von asp auf asp.Net, so wie von VB6 auf VB.Net und dafür gibt es hier auch einen Bereich im Forum und Classic VB ist soweit ich mich erinnere älter als asp.

Aber natürlich hast du recht, dieses Forum ist für ASP.NET, die Frage hätte eher in die Rubrik Allgemeine Fragen gepasst. Oder aber auch in den VbScript bereich, da ja ClassicASP meist damit geschrieben wird.

Gruß,
Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Franki
Datum: 15.07.11 01:13

Hallo,

ohne genaueren Code zu kennen, kann man da nicht viel sagen. In welcher Reihenfolge machst du das denn?

Was passiert wenn du z.B. schreibst?

<%
Benutzername = Request.Form("Username2")
Response.Write Benutzername & "
"
Aufrufer = Request.ServerVariables("Remote_Addr") & "
"

' Ist das noch OK bis hier hin?
' Wenn ja, dann hier die IP-Prüfung gegen die Datenbank machen
' Und dann zur Kontrolle:

Response.Write Benutzername & "
"
Response.Write Aufrufer
%>

Ansonsten poste mal den "etwas VB-Code" den du hinzugefügt hast.
Da das ja hier das "falsche" Forum ist, gerne auch per PM damit wir hier nicht OT werden.

Gruß,
Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Preisser
Datum: 15.07.11 02:26

Hallo,

vielleicht fehlt auf der ASP-Seite ja das Codepage-Flag für den entsprechenden Zeichensatz. z.B
<%@ Codepage = 65001 %>
wäre für UTF-8. Diese Angabe gilt dann sowohl für das Parsen der eigentlichen ASP-Seite, als auch für die Kodierung/Dekodierung der Request- und Response-Strings.

Diese Kodierung sollte dann natürlich auch mit der Angabe im HTTP-Contenttype-Header bzw. HTML-Meta-Tag übereinstimmen (z.B. durch Response.ContentType = "text/html; charset=utf-8"). Die ASP-Datei sollte bei dem Beispiel dann auch als UTF-8 abgespeichert sein.

Außerdem sollten alle beteiligten Seiten den gleichen Zeichensatz verwenden, da der Browser beim Absenden eines Formulares immer den Zeichensatz der aktuellen Seite verwendet; nicht den der Seite, an die das Formular geschickt wird, da er diesen ja nicht wissen kann.

Beitrag wurde zuletzt am 15.07.11 um 02:29:44 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Franki
Datum: 15.07.11 02:35

Hallo,

du hast natürlich recht mit deinen Ausführungen, aber ich glaube nicht, dass das Problem in dieser Richtung zu suchen ist.

Denn diese Angaben sind ja optional und wenn nicht vorhanden wird das ausgewertet was der Server (IIS) liefert. Das wird nicht unterschiedlich auf der Formularseite bzw. der Ergebnisseite sein.

Wir kennen den Code nicht von der IP Abfrage die zusätzlich eingefügt worden ist, ohne funktioniert es, mit nicht. Also scheint das Problem dort zu liegen.

Gruß,
Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Tomahawk
Datum: 15.07.11 15:58

Moin Franki,

danke für Deine konstruktive Frage

Der Code ist genauso wie Du es beschrieben hast, aufgebaut.
strRemoteIP = Request.ServerVariables("Remote_Addr")
strRequestURL = Request.ServerVariables("URL")
strUsername=Request.Form("Username2")
' Danach kommt Datenbankabrage nach IP-Adresse
' If validIP Then
'   Datenbankabfrage nach Benutzerkonto mit Kennwortprüfung
 
' ###### Hier der Block, den ich hinzugefügt habe #####
    strLastPasswordChange = rsUser.Fields("LastPasswordChange").Value
 
    If DateDiff("d", CDate(strLastPasswordChange), Now()) > 90 Then
      MM_redirectLoginSuccess = "./passwordexpired.asp"
    End If
' ###### Ende des hinzugefügten Blockes #####
 
' Else
'   Redirect auf DuKommstHierNetReim
' End If

Die Zeit ist der größte Feind des Menschen.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Tomahawk
Datum: 15.07.11 16:00

Moin nochmal,

im HTML-Bereich der betroffenen ASP-Datei ist auch die Zeile enthalten, die bei allen ASP-Dateien enthalten ist:
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

Die Zeit ist der größte Feind des Menschen.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Preisser
Datum: 15.07.11 16:48

Hallo,

also ich kann mir jetzt nicht vorstellen, dass es was mit diesen 4 Zeilen zu tun hat, die du hinzugefügt hast, da die ja die strUsername-Variable gar nicht verwenden.

Wie genau liest du denn in beiden Fällen aus, welchen Inhalt die strUsername-Variable hat? Könntest du neben dem Inhalt auch mal in beiden Fällen die Länge ausgeben lassen, also Len(strUsername)?

Könnte es sein, dass dein Texteditor, mit dem du die Seite bearbeitet hast, ein UTF-8-BOM zur Datei hinzugefügt hat? Dann benutzt der IIS automatisch UTF-8 statt Windows-1252.

Versuch mal, die ursprüngliche Version der Datei (da, wo das mit den Umlauten noch funktioniert) mit Notepad++ zu öffnen und nur dort die Änderungen vorzunehmen.

Beitrag wurde zuletzt am 15.07.11 um 23:46:03 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: ModeratorDaveS (Moderator)
Datum: 15.07.11 19:15

Und der Fehler taucht vermutlich schon auf zwischen
strUsername=Request.Form("Username2")
und
strLastPasswordChange = rsUser.Fields("LastPasswordChange").Value
bevor dieser zusätzliche Code ausgeführt wurde?

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Franki
Datum: 15.07.11 23:17

Hallo,

und was ist den Kontrollausgaben die ich vorgeschlagen habe?
Was passiert bei Response.Write strUsername direkt nach dem Auslesen aus dem Forumularfeld und nachher bzw. zwischendurch.

Auch den SQl-String kannst du zur Kontrolle mal ausgben lassen per Response.Write bzw. das Ergebnis der DB Abfrage.

Was mich allerdings stutzig macht, ist das du da MM_ in deinem Code hast. Kann das sein, dass du gar nicht reines ASP schreibst sondern mit den verschlimmbesserten Macromedia Funktionen die Dreamweaver z.B. hat(te)?

Wenn ja schemiß die mal raus, kann gut sein, dass das Problem daher kommt. Nur eine Vermutung, ist zu lange her, wo ich mir die mal angesehen habe und relativ schnell wieder Abstand davon genommen habe weil es damit diverse Probleme gab und die keinen Mehrwert hatten (damals). Mit "normalem" Asp kann man auch auchen Redirect machen, schau dir auch mal Server.Transfer oder Server.Execute an.

Gruß,
Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Tomahawk
Datum: 16.07.11 12:15

Es wird schon beim Auslesen anstatt "Möller" => "Mller" in die Variable strUsername gespeichert.

Die Zeit ist der größte Feind des Menschen.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: ASP und die Sonderzeichen beim Request.Form("Feldname") 
Autor: Preisser
Datum: 16.07.11 13:05

Hallo,

hast du mal versucht, die ursprüngliche Datei mit Notepad++ zu editieren? Denn ich vermute, dass der von dir benutzte Editor fälschlicherweise ein UTF-8-BOM speichert, was dazu führt, dass der IIS die ASP-Datei als UTF-8 parst, womit die Umlaute falsch ausgelesen werden, wenn der Browser die Parameter der Seite als ISO-8859-1 sendet.

In Notepad++ kannst du oben im Menü "Kodierung" sehen, welche Kodierung die Seite hat. Dort sollte für deine Seite "ANSI" ausgewählt sein. Wenn nicht, klicke mal auf "Konvertiere nach ANSI" und speichere die Datei; und prüfe dann, ob es dann mit den Umlauten klappt.

Beitrag wurde zuletzt am 16.07.11 um 13:30:09 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel