PHP SQL Injection связывает динамические переменные в операторе для UPDATE - PullRequest
0 голосов
/ 23 октября 2018

Я пытаюсь быть в безопасности от Sql Injection, выполняя подготовленные операторы + привязку ко всем действиям сохранения / обновления / запроса базы данных.Но я застрял в тот момент, когда имя таблицы + user_id являются переменными.code:

// ALL USUAL $dbc MySqli DATABASE CONNECTION - then code statement prepare:
$stmt = $dbc->prepare("UPDATE ".$tablex." SET logo=?, last_mod=? WHERE ".$table_id."=?");
// or: $stmt = $dbc->prepare("UPDATE $tablex SET logo=?, last_mod=? WHERE $table_id=?"); same thing 

$stmt->bind_param('ssi', $log_logo, $last_mod, $user_id);

// execute and do some checking
$status_save = $stmt->execute();
if ($status_save === false) {trigger_error($stmt->error, E_USER_ERROR);}

Это работало нормально, пока были известны $ tablex и $ table_id.Теперь они могут иметь разные имена, а использование переменной неверно.Что я здесь не так делаю?Tx.

...