Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 17:34

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[C#] Escape Funktion gesucht.

Discussion on [C#] Escape Funktion gesucht. within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
[C#] Escape Funktion gesucht.

Hallo,

Ich suche eine Escape Funktion in der Sprache CSharp. Ich habe es schon
mehrmals versucht mit str.replace jedoch kann ich damit nur einen Charakter
ersetzen und wenn ich das ganze in einem Array mache klatscht er mir einen
Error auf die Nase.

Würdet ihr so nett sein und mir verraten was ich vergessen habe.

Code:
            string str = " ' or '1' = '1' -- ";

            string[] Suchen = new string[] { "" };

            string[] Ersetzen = new string[] { "" };

            str.Replace(Suchen, Ersetzen);
Fehlermeldung:

Quote:
Die beste Übereinstimmung für die überladene string.Replace(string, string)-Methode hat einige ungültige Argumente.

1-Argument: Kann nicht von "string[]" in "string" konvertiert werden.
Fehlgeschlagen is offline  
Old 01/09/2013, 13:23   #2

 
boxxiebabee's Avatar
 
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
Soweit ich weiß nimmt die Funktion Replace nur Strings & Chars, jedoch keine Arrays.
boxxiebabee is offline  
Old 01/09/2013, 13:25   #3
 
elite*gold: 1000
Join Date: Apr 2012
Posts: 1,003
Received Thanks: 208
qkuh is offline  
Old 01/09/2013, 13:33   #4
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
Quote:
Originally Posted by boxxiebabee View Post
Soweit ich weiß nimmt die Funktion Replace nur Strings & Chars, jedoch keine Arrays.
Hast du einen Tipp / Antwort für mich wie ich es am besten lösen könnte?

Quote:
Originally Posted by qkuh View Post
Schon klar damit kann ich den String überprüfen ich möchte es aber
selbst bestimmen welche Charakter ich freigebe und welche nicht.

wenn du mir Erleutern könntest wie ich ein Array verwenden kann wäre
ich dir sehr vergund.
Fehlgeschlagen is offline  
Old 01/09/2013, 13:47   #5

 
boxxiebabee's Avatar
 
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
Entweder mit ner Schleife, oder wenn die zu ersetzenden Zeichen immer durch das selbe ersetzt werden sollen:
Code:
string s = "the\nquick\tbrown\rdog,jumped;over the lazy fox.";
char[] chars = new char[] { ' ', ';', ',', '\r', '\t', '\n' };
string snew = chars.Aggregate(s, (c1, c2) => c1.Replace(c2, '\n'));
Edit:
Schleife:
Code:
string str = " ' or '1' = '1' -- ";
string[] Suchen = new[] { "-", "1" };
string[] Ersetzen = new[] { "a", "2" };

for (int i = 0, l = Suchen.Length; i < l; i++)
{
     str = str.Replace(Suchen[i], Ersetzen[i]);
}
boxxiebabee is offline  
Thanks
1 User
Old 01/09/2013, 13:48   #6
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
Quote:
Originally Posted by boxxiebabee View Post
Entweder mit ner Schleife, oder wenn die zu ersetzenden Zeichen immer durch das selbe ersetzt werden sollen:
Code:
string s = "the\nquick\tbrown\rdog,jumped;over the lazy fox.";
char[] chars = new char[] { ' ', ';', ',', '\r', '\t', '\n' };
string snew = chars.Aggregate(s, (c1, c2) => c1.Replace(c2, '\n'));
OMG! Wie doof bin denn ich ne schleife und ich kann das Array trotzdem
verwenden danke für den Gedanken blitz.
Fehlgeschlagen is offline  
Old 01/09/2013, 13:51   #7

 
boxxiebabee's Avatar
 
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
Kein Problem. Hab noch nen kurzes Beispiel reineditiert
boxxiebabee is offline  
Thanks
1 User
Old 01/09/2013, 13:52   #8
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
Quote:
Originally Posted by boxxiebabee View Post
Kein Problem. Hab noch nen kurzes Beispiel reineditiert
Genau das meinte ich <^-^>

danke;
Fehlgeschlagen is offline  
Old 01/09/2013, 14:05   #9
 
elite*gold: 0
Join Date: May 2010
Posts: 793
Received Thanks: 268
wozu bruchst du das? wenn du in C# Aus Sql Datanbanken zugreift Benutzt man im algemeinen das SqlCommand bzw MySqlCommand welches eine Parameters Eigenschaft hat. Wenn du das richtig einstezt übernimmt er das escaping für dich (zuminstedt bei mssql bei mysql bin ich mirt nicht sicher da ich es nicht benutzte)
nkkk is offline  
Old 01/09/2013, 14:09   #10
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
Quote:
Originally Posted by nkkk View Post
wozu bruchst du das? wenn du in C# Aus Sql Datanbanken zugreift Benutzt man im algemeinen das SqlCommand bzw MySqlCommand welches eine Parameters Eigenschaft hat. Wenn du das richtig einstezt übernimmt er das escaping für dich (zuminstedt bei mssql bei mysql bin ich mirt nicht sicher da ich es nicht benutzte)
ClientSocket -> Senden Username, Passwort -> ServerSocket -> SQL Command

^^ ohne Escape Funktion würde ich gegen eine Sql Injektion nicht ankommen.

Sonst noch fragen ?
Fehlgeschlagen is offline  
Old 01/09/2013, 16:03   #11
 
elite*gold: 0
Join Date: May 2010
Posts: 793
Received Thanks: 268
Quote:
Originally Posted by Fehlgeschlagen View Post
ClientSocket -> Senden Username, Passwort -> ServerSocket -> SQL Command

^^ ohne Escape Funktion würde ich gegen eine Sql Injektion nicht ankommen.

Sonst noch fragen ?
wieso? du benutzt doch SqlCommand zum schluss. Der macht die arbeit für dich wenn du es richtig benutzt.

ps für sachen wie passwort oder Username würde ich auch einfach keine sonderzeichen zulassen das löst dein problem auch und vermeidet probleme die später noch mit den sonderzeichen autreten könnten, kommt natürlcih darauf an um was für ein prorgamm es sich handelt.
nkkk is offline  
Old 01/10/2013, 02:05   #12
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
Quote:
Originally Posted by nkkk View Post
wieso? du benutzt doch SqlCommand zum schluss. Der macht die arbeit für dich wenn du es richtig benutzt.

ps für sachen wie passwort oder Username würde ich auch einfach keine sonderzeichen zulassen das löst dein problem auch und vermeidet probleme die später noch mit den sonderzeichen autreten könnten, kommt natürlcih darauf an um was für ein prorgamm es sich handelt.
Es handelt sich dabei um einen Launcher/Patcher der meinen Client auf dem neuestem stand
Hält der noch viele andere Funktionen hat Und da es bei diesem Server es unmöglich ist
Imgame nach pw und user zu fragen weil dieser einen so genannten token dafür braucht muss
Ich User und pass zum Server senden der Server überprüft diese wenn sie richtig sind
Überprüft er noch andere Sachen wenn alles nicht zutrifft erstellt er einen token der 24 stunden aktiv ist und sendet den wieder an den Client socket und verarbeitet diesen
Fehlgeschlagen is offline  
Old 01/10/2013, 17:06   #13
 
elite*gold: 0
Join Date: May 2010
Posts: 793
Received Thanks: 268
Quote:
Originally Posted by Fehlgeschlagen View Post
Es handelt sich dabei um einen Launcher/Patcher der meinen Client auf dem neuestem stand
Hält der noch viele andere Funktionen hat Und da es bei diesem Server es unmöglich ist
Imgame nach pw und user zu fragen weil dieser einen so genannten token dafür braucht muss
Ich User und pass zum Server senden der Server überprüft diese wenn sie richtig sind
Überprüft er noch andere Sachen wenn alles nicht zutrifft erstellt er einen token der 24 stunden aktiv ist und sendet den wieder an den Client socket und verarbeitet diesen
es handelt sich also um ein online spiel? naja da würde ich auch einach keine sonderzeichen im namen zulassen (ich nehme an man erstellt den (account)namen über eine von dir erstellte webpage?). Kann immer probleme geben mit sonderzeichen z.B. kann es passierten das leute nicht wissen wie man den namen schreibt und andre ihn dann nicht eingeben könnne, oder das dan 2 namen exakt gleich ausehen, und es dann zu verwechsungen kommt. etc.

Deshalb würde ich die buchsten im namen anhand einer whitelist filtern. DAs musst du dann natürlcih auchschon bei der accounterstellung machen.
nkkk is offline  
Old 01/11/2013, 20:01   #14
 
5anku's Avatar
 
elite*gold: 170
Join Date: Jan 2011
Posts: 74
Received Thanks: 74
Du musst im Server den SQL-String auch escapen, ansonsten könnte man mit einem eigenen Socket SQL-Abfragen ausführen.
5anku is offline  
Thanks
1 User
Old 01/12/2013, 04:10   #15
 
elite*gold: 0
Join Date: Jan 2013
Posts: 358
Received Thanks: 105
Quote:
Originally Posted by 5anku View Post
Du musst im Server den SQL-String auch escapen, ansonsten könnte man mit einem eigenen Socket SQL-Abfragen ausführen.
Du wie blond sehe ich denn aus ? so doof bin ich auch nicht ich benutze klassen die von mir selbst Geschieben wurden und die klassen verwende ich immer wieder weil ich sicherlich nicht alles immer von vorne schreibe und am ende sieht es genau so aus wie vorher. Aber danke dennoch für einen tipp einige würden es nicht wissen.

Ich hätte es so vorgehabt:

Client -> Username, Passwort -> Escape -> Encode -> Über TCP -> Server ->
Decode -> Escape -> SQL -> Error or Success to Client


PS: Das ist kein Flame!

-
Fehlgeschlagen is offline  
Reply


Similar Threads Similar Threads
Fiesta PS mit all Gm funktion gesucht wie der WoW PS WoWforFree
04/22/2011 - Fiesta Online - 3 Replies
Ich suche ein Fiesta Online PS mit all Gm funktion also so wie bei WoWforfree dort hat es Gm befehle ich meine nur mit befehlen die die GMS haben ausser KIK oder bann
Hilfe bei Send Funktion mit Stop Funktion
04/02/2011 - AutoIt - 11 Replies
Hallo Elitepvpers ich habe ein Problem und Mein Problem ist das mein Text einfach weiter schreibt wenn ich mit HotKey verwende... gib es keine Funktion das der Text einmal kommt und nicht wenn man einmal die HotKey das er 10 min das selbe schreibt :confused:
On / Off funktion hilfe ;) gesucht ^^
08/31/2010 - WarRock - 0 Replies
ich check nicht so ganze die on/off funktion in einen nomenue könnte hilfe gebrauchen ;) ist das soweit richtig? oder eher so eine funktion?
Quest Funktion Gesucht!
07/11/2010 - Metin2 Private Server - 0 Replies
Moin Leuts. Suche ne quest funktion um die Player (Char) Id & namen rauszufinden. Dammit meine ich nicht pc.get_name(). Gibt es sonst eine möglichkeit diese ID durch eine Quest funktion o.ä. rauszufinden? wenn ja welche? Freue mich über jede Antwort die mir weiterhilft. Greatz Benhero
Schon immer eine Ident Funktion gesucht? Dann Schaut einfach mal hier rein :)
08/07/2008 - Guild Wars - 1 Replies
Huhu, habe hier mal eine 'Ident Funktion' geschrieben, die ich schon sehr sehr lange benutze... (könnt ihr natürlich 'modden', sodass er keine Goldenen Gegenstände etc. identifiziert...) Folgende Infos die Ihr evtl. wissen müsstet, wenn ihr den Script nicht anpassen wollt. Jedoch ist es relativ einfach anzupassen, da man nur wenige Variablen ändern muss. (Siehe selbst) Auflösung: 1024*768 Interface Größe: Klein Die Taschen (F9) müssen unten Links hingeschoben werden. Das Ident-Kit...



All times are GMT +2. The time now is 17:34.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.