ID: 39707 Updated by: [EMAIL PROTECTED] Reported By: aspen dot olmsted at alliance dot biz -Status: Open +Status: Assigned Bug Type: PDO related Operating System: Windows XP SP2 PHP Version: 5.2.0 -Assigned To: +Assigned To: wez
Previous Comments: ------------------------------------------------------------------------ [2006-12-01 18:50:41] aspen dot olmsted at alliance dot biz The line that says: $sth = $dbh->prepare("EXECUTE spReturn_Int ?"); should be: $sth = $dbh->prepare("EXECUTE spReturn_Int ?,?"); Sorry when I simplified the example I made this mistake ------------------------------------------------------------------------ [2006-12-01 18:00:40] aspen dot olmsted at alliance dot biz Description: ------------ I am trying to pass output parameters to MSSQL through PDO using the odbc driver. If there is just one parameter it works. If there is more than one it will not. There is a sample to send an inout parameter to SQL on the pdo documentation page I used as a starting place Reproduce code: --------------- SQL: ALTER PROCEDURE spReturn_Int @err int OUTPUT, @err2 varchar(255) AS SET @err = 11 $sth = $dbh->prepare("EXECUTE spReturn_Int ?"); $invalue = 'Dog'; $sth->bindParam(1, $return_value, PDO::PARAM_INT|PDO::PARAM_INPUT_OUTPUT); $sth->bindParam(2, $invalue, PDO::PARAM_STR); $sth->execute(); print "procedure returned $return_value\n"; Expected result: ---------------- It should print "procedure returned 11" Actual result: -------------- It prints "procedure returned ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=39707&edit=1