Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Thales Caricati

[Resolvido] [PDO] bindValue ou query?

Recommended Posts

Olá membros do Fórum IMasters,

 

Tenho uma dúvida relacionada ao PDO...

 

Qual a diferença de tratar o PDO usando o bindValue e usando o query?

 

bindValue:

  $db = $conn->prepare("INSERT INTO tabela (campo) VALUES (:valor1)");
  $db->bindValue(':valor1', $valor, PDO::STR_PARAM);

 

Query:

  $conn->query("INSERT INTO tabela (campo) VALUES ('{$valor}')");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui você força $valor1 a ser uma string. Sem contar o tratamento de caracteres especiais como \ e '.

 <?php $db->bindValue(':valor1', $valor, PDO::STR_PARAM); ?> 

Aqui você executa e seja o que Deus quiser!

 <?php $conn->query("INSERT INTO tabela (campo) VALUES ('{$valor}')"); ?> 

Eu acredito que a função query é para consultas cujos dados não vêm de formulários, por exemplo, um

select * from table_name

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mesmo que esteja Resolvido, prefira usar prepare()/execute() para não ter problemas com esse cast forçado de bindValue(), uma vez que essa dupla detecta o tipo automaticamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.