【发布时间】:2024-09-04 00:10:03
【问题描述】:
所以我合法地开始阅读有关 PDO 和 PDO 状态的信息,以更新我的代码并为其提供更高的安全性,但我真的不知道这是否可行或是否可以进行注入。我还在制作数组之前对数据进行了清理。我做了这个函数o添加数据给定名称表和一个具有列名称和值的数组,如下所示
$tabla = 'tabla'
$datos = array(
'id' => 'NULL',
'id_usuario' => "'{$usuario['id']}'",
'id_tipo' => "'{$tipo}'",
'id_estado' => "'{$estado}'",
'id_visibilidad' => "'{$visibilidad}'",
'titulo' => "'{$titulo}'",
'contenido' => "'{$contenido}'",
'fecha' => 'CURRENT_TIMESTAMP'
);
function pdo_agregar($tabla, $datos) {
global $pdo;
$columnas = implode(', ', array_keys($datos));
$valores = implode(', ', array_values($datos));
$sentencia = $pdo->prepare("INSERT INTO $tabla ($columnas) VALUES ($valores)");
foreach($datos as $indice => $valor) {
$sentencia->bindParam(':'.$indice, $valor);
}
if($sentencia->execute()) {
return true;
} else {
return false;
}
$sentencia->close();
$pdo->close();
}
这样好吗? o 我必须做出类似的陈述吗
$sentencia = $pdo->prepare("INSERT INTO $tabla (col, col2, col3) 值 (:col, :col2, :col3");
然后单独绑定参数?
提前致谢!
【问题讨论】:
标签: php mysql security pdo prepared-statement