Greetzz Geschrieben 27. Oktober 2010 Geschrieben 27. Oktober 2010 HI, ich stehe vor folgendem Problem: Ich schreibe ein Tool, das innerhalb einer Software läuft. Dadurch bin ich an die Verwendung von VBScript gebunden. Innerhalb meines Tools wird eine ADODB Connection aufgebaut. Einige Texte werden in Variablen geschrieben und sollen dann per SQL Insert Befehl in die Datenbank geschrieben werden. Mein problem ist: wenn jemand im Text Sonderzeichen wie ' oder " verwendet, wird mein SQL-Select zwischendurch unterbrochen und das Programm bricht ab. Die texte müssen aber jegliche Sonderzeichen unterstützen. Code: Dim text text = InputBox("Bitte geben Sie einen Text ein","Text eingeben","Bitte hier max. 100 Zeichen eingeben.") Set cn=CreateObject("ADODB.Connection") cn.ConnectionString = "Provider=SQLOLEDB.1; **** Geheim :-) **** Set rs = createobject("ADODB.Recordset") Set rs = cn.execute("INSERT INTO meineDBTabelle (descriptiontext) Values ('" & text &"')") => Ergebnis: So bald jemand ein Hochkomma eingibt, stürzt der Befehl ab. Ich musste das Ding etwas anpassen aus Datenschutzgründen aber im Prinzip ists das gleiche wie im original.
Gateway_man Geschrieben 27. Oktober 2010 Geschrieben 27. Oktober 2010 hi, das hier wär eine Möglichkeit. Ist aber eine quick and dirty Lösung. Was tut er ? Er hat sich ne funktion geschrieben, der man den ZielString übergibt und dieser wird dann nach bereits belegten SQL Zeichen durchsucht und erstetzt. lg Gateway PS: Wenn du Google befrägst nutze am besten Wörter wie: VBscript, sql, injection
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden