diff options
author | Brian Bruns <camber@php.net> | 2001-03-16 01:21:32 +0000 |
---|---|---|
committer | Brian Bruns <camber@php.net> | 2001-03-16 01:21:32 +0000 |
commit | bb5369fc62675786d8541641a6c63fe511a44565 (patch) | |
tree | 31c15825e2ac7489245cbd8ee0ed6af813b14eed /ext/sybase/php_sybase_db.c | |
parent | 847e0d996c90a0a13e869e791db8a3e0872f1353 (diff) | |
download | php-git-bb5369fc62675786d8541641a6c63fe511a44565.tar.gz |
sybase_affected_rows implementation submitted by John F. Dumas <jdumas@locutus.kingwoodcable.com>
Diffstat (limited to 'ext/sybase/php_sybase_db.c')
-rw-r--r-- | ext/sybase/php_sybase_db.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/ext/sybase/php_sybase_db.c b/ext/sybase/php_sybase_db.c index 03b277016f..a31ce54e65 100644 --- a/ext/sybase/php_sybase_db.c +++ b/ext/sybase/php_sybase_db.c @@ -56,6 +56,7 @@ function_entry sybase_functions[] = { PHP_FE(sybase_fetch_field, NULL) PHP_FE(sybase_field_seek, NULL) PHP_FE(sybase_result, NULL) + PHP_FE(sybase_affected_rows, NULL) PHP_FE(sybase_min_error_severity, NULL) PHP_FE(sybase_min_message_severity, NULL) PHP_FALIAS(mssql_connect, sybase_connect, NULL) @@ -74,6 +75,7 @@ function_entry sybase_functions[] = { PHP_FALIAS(mssql_fetch_field, sybase_fetch_field, NULL) PHP_FALIAS(mssql_field_seek, sybase_field_seek, NULL) PHP_FALIAS(mssql_result, sybase_result, NULL) + PHP_FALIAS(mssql_affected_rows, sybase_affected_rows, NULL) PHP_FALIAS(mssql_min_error_severity, sybase_min_error_severity, NULL) PHP_FALIAS(mssql_min_message_severity, sybase_min_message_severity, NULL) {NULL, NULL, NULL} @@ -1248,6 +1250,56 @@ PHP_FUNCTION(sybase_result) } /* }}} */ + +/* {{{ proto int sybase_affected_rows([int link_id]) + Get number of affected rows in last query */ +PHP_FUNCTION(sybase_affected_rows) +{ + pval *sybase_link_index = NULL; + sybase_link *sybase_ptr = NULL; + int id = 0; + int type = 0; + + switch(ZEND_NUM_ARGS()) + { + case 0: + { + id = php_sybase_module.default_link; + } + break; + + case 1: + { + if (getParameters(ht, 1, &sybase_link_index)==FAILURE) + { + RETURN_FALSE; + } + + convert_to_long(sybase_link_index); + id = sybase_link_index->value.lval; + } + break; + + default: + { + WRONG_PARAM_COUNT; + } + break; + } + + sybase_ptr = (sybase_link *)zend_list_find(id, &type); + + if(type!=php_sybase_module.le_link && type!=php_sybase_module.le_plink) + { + php_error(E_WARNING,"%d is not a Sybase link index",id); + RETURN_FALSE; + } + + return_value->value.lval = DBCOUNT(sybase_ptr->link); + return_value->type = IS_LONG; +} + + PHP_MINFO_FUNCTION(sybase) { char maxp[32],maxl[32]; |