summaryrefslogtreecommitdiff
path: root/ext/sybase/php_sybase_db.c
diff options
context:
space:
mode:
authorBrian Bruns <camber@php.net>2001-03-16 01:21:32 +0000
committerBrian Bruns <camber@php.net>2001-03-16 01:21:32 +0000
commitbb5369fc62675786d8541641a6c63fe511a44565 (patch)
tree31c15825e2ac7489245cbd8ee0ed6af813b14eed /ext/sybase/php_sybase_db.c
parent847e0d996c90a0a13e869e791db8a3e0872f1353 (diff)
downloadphp-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.c52
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];