PHP calling PostgreSQL function - type issue?
- by CitrusTree
I have a function in PostgreSQL / plpgsql with the following signature:
CREATE OR REPLACE FUNCTION user_login(TEXT, TEXT) RETURNS SETOF _get_session AS $$ ... $$
Where _get_session is a view. The function works fine when calling it from phpPgAdmin, however whan I call it from PHP I get the following error:
Warning: pg_query() [function.pg-query]: Query failed: ERROR: type "session_ids" does not exist CONTEXT: compile of PL/pgSQL function "user_login" near line 2 in /home/sites/blah.com/index.php on line 69
The DECLARE section of the function contains the following variables:
oldSessionId session_ids := $1;
newSessionId session_ids := $2;
The domain session_ids DOES exist, and other functions which use the same domain work when called from the same script. The PHP is as follows:
$query = "SELECT * FROM $dbschema.user_login('$session_old'::TEXT, '$session'::TEXT)";
$result = pg_query($login, $query);
I have also tried this using ::session_ids in place of ::TEXT when calling the function, however I recieve the same error.
Help :o(