Enkele aanhalingstekens worden in SQL gebruikt voor letterlijke tekenreeksen. Dat betekent dat dit:
'$2'
is slechts een tekenreeks die de tekens $ . bevat en 2 in plaats van een tijdelijke aanduiding. Als u een tijdelijke aanduiding wilt, moet u de aanhalingstekens weglaten:
$Query = pg_query_params($db, '...password=(crypt($2,password))...', array(33,'thepassword'));
Dat geeft je de tijdelijke aanduiding in plaats van de letterlijke tekenreeks.