Op 7 apr 2010, om 18:11 heeft Tuo Pe het volgende geschreven:

Hi!

I have written this function in PL/pgSQL,
CREATE OR REPLACE FUNCTION MakeSimpleReservation(integer, integer, integer, text, text) RETURNS boolean ...

text, text ?

In my PHP script, I have this code:
$start_ts = '2010-04-12 11:00:00';
$end_ts   = '2010-04-12 14:00:00';

Looks like timestamps to me, why do you use TEXT in your function?

$update = pg_query($yhteys, "SELECT MakeSimpleReservation(2, 3, 1, '{$start_ts}' , '{$end_ts}');");

Why not pg_query_params? That's made to receive parameters:

$update = pg_query_params($yhteys, "SELECT MakeSimpleReservation(2, 3, 1, $1, $2);", array($start_ts, $end_ts));


On psql, I can run a command such as

select * from MakeSimpleReservation(2, 30, 1, '2010-04-12 11:00:00', '2010-04-12 14:00:00');

without any problems, but when I try to run it via PHP, I get this error message:

ERROR: function makesimplereservation(integer, integer, integer, unknown, unknown) does not exist LINE 1: SELECT MakeSimpleReservation(2, 3, 1, '2010-04-12 11:00:00' ... ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts.

For some reason, the last two function parameters are not recognized as strings. Is this a problem with PHP or with PostgreSQL? Can anyone give me advice how to fix this?

Tuo




--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general





Frank Heikens
frankheik...@mac.com




--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to