PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

pg_query_params retorna erro:a mensagem de ligação fornece 2 parâmetros, mas a instrução preparada requer 1


Aspas simples são usadas em SQL para literais de string. Isso significa que isso:
'$2'

é apenas uma string que contém os caracteres $ e 2 em vez de um marcador de posição. Se você quiser um espaço reservado, você precisa deixar de fora as aspas:
$Query = pg_query_params($db, '...password=(crypt($2,password))...', array(33,'thepassword'));

Isso fornece o espaço reservado em vez do literal de string.