Rolf Bensch: Ajax: Problem mit Hochkomma " => \"

Beitrag lesen

Hi,

$SQL = "Update Tabelle SET $Feld = :Wert WHERE id = :id";

Aber wenn $Feld von einer unsicheren Quelle kommt, ist es nach den Regeln für Bezeichner zu behandeln. Dafür gibt es jedoch keine vorgefertigte Funktion.

Hmmm. $Feld kommt aus "unsicherer Quelle". Im Original sitzt $Feld bereits in Backticks. Gemäß Doku müsste ich aber auch auf "ungültige Zeichen" und "reservierte Worte" prüfen. Macht das noch Sinn? Einer SQL-Injection müsste durch die Parametrisierung eigentlich ausreichend entgegengewirkt sein. Enthält der "Identifier" Müll bzw. Schadcode, müsste m.E. automatisch eine PDOException ausgelöst werden. Ich sehe da jetzt kein wirkliches Problem - oder habe ich etwas übersehen?

mfG Rolf