2010-12-08 6 views
0

Das könnte eine dumme Frage sein, aber ich bin ziemlich verwirrt. Ich erhalte JSON-Dateien von Benutzern und json_decode in PHP und lege sie in MySql ab. Ist das Filtern/Entkommen der dekodierten Daten gegen SQL-Injektionen notwendig oder unnötig beim Einfügen in db? oder alternativ sollte etwas anderes getan werden?JSON-Eingangsfilterung benötigt oder nicht

Antwort

4

Es ist unbedingt erforderlich. Vertraue niemals den Daten deiner Benutzer.

+0

JSON kann gebrochen werden. hast du eine idee wie kann ich das machen? – opteronn

+0

Dekodieren Sie den JSON mit PHP. Dann bereinigen Sie die Daten. Fügen Sie dann bei Bedarf in die Datenbank ein. Ich empfehle die Verwendung einer Bibliothek oder eines Frameworks (das SQL entzieht), um Datenbankeinfügungen zu handhaben, um das Risiko einer Injektion zu verringern. – troynt

0

Verwenden Sie mysql_real_escape_string() auf die Daten gehen, dann wird die db keinen Injektion Angriff leiden. Das behebt jedoch kein JSON-Problem. Sie müssten dafür eine separate Validierung durchführen.

+0

Ich kenne diese Funktion, aber wie wir beide sagten, wird es ein JSON-Problem geben. Punkt ist, wie können wir das lösen ... – opteronn

+0

Ich denke, Sie müssen möglicherweise erneut posten, um nach tatsächlichen JSON zu fragen. Es gibt keine Frage über json. Ich habe den Teil Ihrer Post mit einem Fragezeichen beantwortet: '" Filtern/Entkommen der entschlüsselten Daten gegen * SQL-Injektionen * benötigt oder unnötig beim Einfügen in db? "(Hervorhebung hinzugefügt) – zanlok

Verwandte Themen