php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #7398 Stored procedure error return values not passed through
Submitted: 2000-10-23 00:00 UTC Modified: 2015-02-17 08:02 UTC
Votes:5
Avg. Score:2.2 ± 1.6
Reproduced:1 of 2 (50.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: uk at dataway dot ch Assigned:
Status: Wont fix Package: Sybase-ct (ctlib) related
PHP Version: 4.0.3pl1 OS: Linux 2.2.17
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2000-10-23 00:00 UTC] uk at dataway dot ch
When a stored procedure is called by sybase_query() and returns an error value, sybase_query does not return a false value.

I made a stored procedure:
create proc p_err as return -999
go

Then, from php:
echo sybase_query('EXEC p_err')

returns:
(Resource id #2)

Arguably, this could be considered the correct behaviour; but in any case, there should be a way of getting at the return value (perhaps a function sybase_status() which returns the value of the last sybase_query()?). Looking through the source code, the status return is simply discarded.

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-05-14 13:37 UTC] joey@php.net
I have started on a way around this several times, but nothing concrete has formed as of yet.
 [2010-12-01 15:46 UTC] jani@php.net
-Package: Feature/Change Request +Package: Sybase-ct (ctlib) related
 [2015-02-17 08:02 UTC] krakjoe@php.net
-Status: Open +Status: Wont fix
 [2015-02-17 08:02 UTC] krakjoe@php.net
I'm going to mark as won't fix.

Sybase has been removed in PHP7 because it doesn't have a user base in 5.

If in the future a maintainer for the extension pops up and decides to deploy sybase with PECL, they can always use the bug search feature here to find this report.

Sorry about the wait.
 
PHP Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Tue May 21 21:01:26 2019 UTC