Felix Riesterer: PHP PDO Bind Parameters Wo sinnvoll?

Beitrag lesen

Lieber MB,

SELECT ?, ?
FROM ?
WHERE ? = ?;
array( 
  'user.first',
  'user.last',
  'user',
  'id',
  '4'
)

Im SELECT-Statement müssen die Spaltennamen konkret ausformuliert stehen. Vergleiche:

SELECT user.first, user.last
FROM user
WHERE id = 4
SELECT 'user.first', 'user.last'
FROM 'user'
WHERE 'id' = 4

Wie Du siehst, sind die Spaltennamen (und der Tabellenname) als Zeichenketten maskiert worden, obwohl sie als Code-Bestandteile verstanden werden sollten. Daher kannst Du nur die Werte mit PDO-Platzhaltern setzen, nicht aber Spalten- oder Tabellennamen.

Liebe Grüße

Felix Riesterer