Select PDO de uma linha
Olá galera.
Venho aqui entre vocês não só para perguntar a vocês mais para ajuda-los em algo.
1 ajudando:
Descobri uma como fazer uma consulta em PDO em apenas uma linha segue abaixo.
<?php
$variavel = $conn->query('SELECT * FROM tabela WHERE 1');
?>
Eu testei e funciona.
2 pedindo ajuda:
Meu objetivo principal utilizando PDO é prezar pela segurança no meu código, não sei
se com essa opção usando 'query' eu mantenho todo a segurança do pdo.
Segue um exemplo de select com PDO 100% segura
<?php
$sql = 'SELECT * FROM :table WHERE id = :id';
try{
$consulta_sql = $conn->prepare($sql);
$consulta_sql->bindValue(':table', $tabela, PDO::PARAM_STR);
$consulta_sql->bindValue(':id', $id, PDO::PARAM_INT);
$consulta_sql->execute();} catch (PDOException $e) {
echo $e->getMessage();
}
?>
O bindValue até onde eu sei que é o mestre da segurança no PDO. Então é correto afirmar que consultas sem ele não seriam seguras?
exemplo de conexão sem o bindValue:
<?php
$dados= array($dado, $id);
try{
$consulta = $db->prepare('UPDATE tabela SET `dado`= ? WHERE id= ?');
$consulta->execute($dados);} catch (PDOException $e) {
echo $e->getMessage();
}
?>
Galera só para resumir se ficou meio confuso.
O primeiro exemplo é um código curto para uma query no banco de dados e minha dúvida é se é seguro utiliza-lo ou utiliza-lo não é uma boa prática se possível o porque.
No exemplo 2 é um bloco de PDO utilizando bindValue que até onde eu sei é oque torna as conexões via PDO seguras e a prova de SQL injection, é o código que eu uso.
No exemplo 3 está um exemplo que torna mais rápido a inserção dos dados utilizando um array dentro do 'execute', porém também tenho dúvidas se essa forma é segura e se é uma boa prática.
Fico no aguardo da ajuda, obrigado.
Discussão (3)
Carregando comentários...