Re: Stored procedures, PDO, and PHP issue - Mailing list pgsql-php

From Bill Moran
Subject Re: Stored procedures, PDO, and PHP issue
Date
Msg-id 20090819171127.57b19e4c.wmoran@potentialtech.com
Whole thread Raw
In response to Stored procedures, PDO, and PHP issue  (Eric Chamberlain <Eric.Chamberlain@zonarsystems.com>)
List pgsql-php
In response to Eric Chamberlain <Eric.Chamberlain@zonarsystems.com>:

> I'm having an issue calling a specific stored proc using PHP and PDO.
> I have two procs with the same name and same number of parameters.
> However, the parameter types are different.  When the below code is
> called in PHP it always calls the varchar, varchar proc.  I can not
> get it to call the integer, varchar proc.
>
> Stored procedure definitions:
> boolean is_password_expired(i_user varchar, i_pass varchar)
> boolean is_password_expired(i_user_id integer, i_pass varchar)
>
> $stmt = $db->prepare("SELECT is_password_expired(?, ?)");
> $stmt->bindValue(1, $userId, $hashPass, PDO::PARAM_INT);
> $stmt->execute();
>
> This always returns false because it's passing the $userId, of say
> "1", to the varchar, varchar proc.  I've tried using the following:
>
> $stmt = $db->prepare("SELECT
> is_password_expired(?::integer, ?::varchar)");
>
> This completely fails.
>
> $stmt->bindParam(1, $userId, $hashPass, PDO::PARAM_INT);
>
> Same as bindValue result.
>
> $stmt->execute(array($userId, $hashPass));
>
> Same result.
>
> Is there some way to inform PDO and Postgresql that I plan on using
> the integer, varchar proc?  If so, how do I do this?  Thanks all!

I would expect what you're doing to work.  It works with the functional
interface.

What do the query logs on the server say?  Try turning full query logging
on and see what's actually getting run.

I see in another reply that you're getting a blank white screen.  This
tends to suggest that your debugging is configured wrong, or that PHP is
encountering a fatal error and coredumping or something similar.  Check
whatever logs are appropriate for evidence of this.  Check the HTTP error
log, as well as system error logs.

--
Bill Moran
http://www.potentialtech.com
http://people.collaborativefusion.com/~wmoran/

pgsql-php by date:

Previous
From: Eric Chamberlain
Date:
Subject: Re: Stored procedures, PDO, and PHP issue
Next
From: Andy Shellam
Date:
Subject: Re: Stored procedures, PDO, and PHP issue