¿Cuál es la diferencia entre las comillas "y"? ¿Qué pasa con '? ¿Hay algún error al usar diferentes comillas' y "debajo?PHP: ¿comillas diferentes?
$result = pg_query_params($dbconn,
'INSERT INTO users
(username, email, passhash_md5)
VALUES ($1, $2, $3)',
array($username, $email, $passhash_md5
)
$result = pg_query_params($dbconn,
"SELECT user_id
FROM users
WHERE email = $1",
array($email)
)
Escapes para controlar los caracteres, como \ n y \ t no se expanden en cadenas de comillas simples, también. – PhiLho
Las cadenas como '$ sql1' siempre me hacen temblar. Si realmente quieres incluir una variable en él, usar '{$ email}' siempre obtiene mi preferencia. Mi enfoque habitual es '' WHERE email = ". $ Email', lo que deja absolutamente en claro que NO se debe tomar literalmente. – JorenB
Por supuesto, ninguna de esas formas es segura contra la inyección de SQL, ¡como quiera que llame la variable! El OP tiene razón, usando $ 1 y otros para pg_query_params en comillas simples; no hay sustitución de variables en realidad está ocurriendo aquí. La sintaxis '$ 1' es tal vez un poco engañosa ... otros sistemas de parametrización de consultas simplemente usan '?'. – bobince