mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 24.01.2017 06:13 Benutzername: Passwort: Auto-Login

Thema: [php] preg_replace für sicheren Input vom 27.04.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [php] preg_replace für sicheren Input
Autor Nachricht
13pixelchen
Account gelöscht Threadersteller


Ort: -

Verfasst Do 27.04.2006 22:12
Titel

[php] preg_replace für sicheren Input

Antworten mit Zitat Zum Seitenanfang

Hi,

Ich habe Formulare mit Eingabefeldern, die alles in ne MySQL schreiben. Alles UTF-8, also jede Menge Sonderzeichen können kommen und sollen bleiben. Was allerdings rausgefiltert werden soll, sind alle "gefährlichen" Zeichen (Welche auch nicht escaped etc. werden sollen, sondern rausfliegen).

Wie müsste dann preg_replace aussehen, um "\" und "'" und sonstwas zu kicken?
 
beeviZ

Dabei seit: 30.09.2002
Ort: Dortmund
Alter: 23
Geschlecht: Männlich
Verfasst Do 27.04.2006 22:15
Titel

Antworten mit Zitat Zum Seitenanfang

wenn du wirklich alle \ und ' entfernen willst sollte eigentlich n simples dummes str_replace('\\','',$foo); str_replace("'","",$foo); reichen
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
13pixelchen
Account gelöscht Threadersteller


Ort: -

Verfasst Do 27.04.2006 22:43
Titel

Antworten mit Zitat Zum Seitenanfang

Hm, wenn das schon alle "gefährlichen" Zeichen sind, okay Grins
 
beeviZ

Dabei seit: 30.09.2002
Ort: Dortmund
Alter: 23
Geschlecht: Männlich
Verfasst Fr 28.04.2006 00:58
Titel

Antworten mit Zitat Zum Seitenanfang

naja. also ich weiß von \n und \r. ' und " natürlich auch gewissermaßen. klar. aber sonst? keine ahnung. vielleicht wer anders? * Keine Ahnung... *
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
karmacoder

Dabei seit: 15.04.2002
Ort: Fürth
Alter: 35
Geschlecht: Männlich
Verfasst Fr 28.04.2006 07:11
Titel

Antworten mit Zitat Zum Seitenanfang

die werden schon selbst wissen was gefährlich ist:
escape-string()

das einzige was du dabei noch beachten musst ist die ausgabe. wenn z.b. alle ' escaped sind hilft dir das nicht wenn man damit trotzdem code in die db einschleusen kann die du danach ausführst...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
miga

Dabei seit: 04.08.2004
Ort: offenburg
Alter: 35
Geschlecht: Männlich
Verfasst Fr 28.04.2006 07:48
Titel

Antworten mit Zitat Zum Seitenanfang

oder mal bei folgenden Funktionen gucken: htmlspecialchars(), htmlentities(), addslashes(), mysql_escape_string()
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
tacker

Dabei seit: 22.03.2002
Ort: Offenbach am Main
Alter: 36
Geschlecht: Männlich
Verfasst Fr 28.04.2006 09:28
Titel

Antworten mit Zitat Zum Seitenanfang

Wenn Du ganz sicher gehen willst, machst Du ne Whitelist mit einem Range von erlaubten
Zeichen und löschst alles andere. Das halte ich aber für nicht so doll.
Du solltest dem User schon mitteilen, dass er ein falsches Zeichen angegeben hat,
sonst wundert er sich vielleicht, warum es nicht mehr da ist.

Und zum Schluss halt immer ein PDO::quote oder mysql_real_escape_string.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
13pixelchen
Account gelöscht Threadersteller


Ort: -

Verfasst Fr 28.04.2006 09:54
Titel

Antworten mit Zitat Zum Seitenanfang

Ja, das mit dem Escapen klappt schon einwandfrei. Nur da ich UTF-8 habe, ist ne Whitelist recht schwierig wegen der ganzen Sonderbuchstaben in Fremdsprachen.

Ich bin auch sowieso grade am Schrauben, weil wenn jemand einen Namen mit Sonderzeichen eingibt, wird er korrekt UTF-8 kodiert in die mysql-DB übernommen, aber diesen Namen in einer html-Mail korrekt anzuzeigen, oder gar in einem URL-Query zu übergeben, scheiter offenbar an Sonderzeichen mit mehr als 2 Bytes.
 
 
Ähnliche Themen Suche sicheren Mailversand
Javascript: replace
JS | replace - regex - br
Kleine Frage zu JS replace
Javascript suchen ersetzen / replace
[javascript] replace() ersetzt nur einen match
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.