为了更好地理解准备好的和不做的,我想知道下面的例子是否没有错(甚至是最坏的 - 危险的)来执行:
$tablename = 'mytable';
$tablepref = 'my_';
$sql = $mysqli->prepare('UPDATE `' . $tablename . '` SET `' . $tablepref . 'id` = ? WHERE `' . $tablepref . 'userid` = ?');
// The rest goes here (bind_param, execute(), etc)
只需快速说明 - $tablename
和/或$tablepref
永远不会成为客户输入。它们总是由服务器生成。
(如果我有任何拼写错误,请原谅我)