cvs: php4 /ext/fbsql php_fbsql.c php_fbsql.h

From: Date: Tue, 10 Jul 2001 22:34:25 +0000
Subject: cvs: php4 /ext/fbsql php_fbsql.c php_fbsql.h
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-6163@lists.php.net to get a copy of this message
fmk Tue Jul 10 18:34:25 2001 EDT Modified files: /php4/ext/fbsql php_fbsql.h php_fbsql.c Log: Fixing return value from fbsql_query after a DELETE FROM with success. Index: php4/ext/fbsql/php_fbsql.h diff -u php4/ext/fbsql/php_fbsql.h:1.6 php4/ext/fbsql/php_fbsql.h:1.7 --- php4/ext/fbsql/php_fbsql.h:1.6 Thu May 31 14:43:29 2001 +++ php4/ext/fbsql/php_fbsql.h Tue Jul 10 18:34:24 2001 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_fbsql.h,v 1.6 2001/05/31 18:43:29 fmk Exp $ */ +/* $Id: php_fbsql.h,v 1.7 2001/07/10 22:34:24 fmk Exp $ */ #define HAVE_FBSQL 1 @@ -85,6 +85,9 @@ PHP_FUNCTION(fbsql_username); PHP_FUNCTION(fbsql_password); PHP_FUNCTION(fbsql_warnings); + +PHP_FUNCTION(fbsql_get_autostart_info); +//PHP_FUNCTION(fbsql_set_autostart_info); static void php_fbsql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type); static void php_fbsql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistant); Index: php4/ext/fbsql/php_fbsql.c diff -u php4/ext/fbsql/php_fbsql.c:1.33 php4/ext/fbsql/php_fbsql.c:1.34 --- php4/ext/fbsql/php_fbsql.c:1.33 Wed Jun 20 18:54:51 2001 +++ php4/ext/fbsql/php_fbsql.c Tue Jul 10 18:34:24 2001 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_fbsql.c,v 1.33 2001/06/20 22:54:51 fmk Exp $ */ +/* $Id: php_fbsql.c,v 1.34 2001/07/10 22:34:24 fmk Exp $ */ /* TODO: * @@ -108,6 +108,10 @@ void fbaRelease(); unsigned int fbaCount(); +struct FBCAutoStartInfo { + FBArray* infoLines; +}; + struct PHPFBResult @@ -206,6 +210,9 @@ PHP_FE(fbsql_password, NULL) PHP_FE(fbsql_warnings, NULL) + PHP_FE(fbsql_get_autostart_info, NULL) +// PHP_FE(fbsql_set_autostart_info, NULL) + /* Aliases: */ PHP_FALIAS(fbsql, fbsql_db_query, NULL) @@ -1538,7 +1545,7 @@ return_value->type = IS_LONG; if (sR == 1 && md) fbcmdRelease(md); } - else if (tp[0] == 'I' || tp[0] == 'U') + else if (tp[0] == 'I' || tp[0] == 'U' || tp[0] == 'A') { if (tp[0] == 'I') link->insert_id = fbcmdRowIndex(md); return_value->value.lval = 1; @@ -3019,6 +3026,60 @@ RETURN_TRUE; } /* }}} */ + +/* {{{ proto array fbsql_get_autostart_info([resource link_identifier]) + */ +PHP_FUNCTION(fbsql_get_autostart_info) +{ + PHPFBLink* phpLink = NULL; + zval **fbsql_link_index = NULL; + int id; + FBCAutoStartInfo* asInfo; + FBSQLLS_FETCH(); + + switch (ZEND_NUM_ARGS()) { + case 0: + id = php_fbsql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU FBSQLLS_CC); + CHECK_LINK(id); + break; + case 1: + if (zend_get_parameters_ex(1, &fbsql_link_index)==FAILURE) { + RETURN_FALSE; + } + id = -1; + break; + default: + WRONG_PARAM_COUNT; + break; + } + ZEND_FETCH_RESOURCE2(phpLink, PHPFBLink *, fbsql_link_index, id, "FrontBase-Link", le_link, le_plink); + + if (phpLink->execHandler == NULL) { + if (FB_SQL_G(generateWarnings)) php_error(E_WARNING, "No valid Exec handler available for this connection"); + RETURN_FALSE; + } + else { + array_init(return_value); + asInfo = fbcehGetAutoStartInfo(phpLink->execHandler); + if (asInfo != NULL) { + unsigned i; + + for (i=0; i<fbaCount(asInfo->infoLines); i++) { + FBArray* infoLine = fbaObjectAtIndex(asInfo->infoLines, i); +// if (fbaCount(infoLine) == 2) { +// fbaObjectAtIndex(infoLine, 0); +// fbaObjectAtIndex(infoLine, 1); +// } +// else { + add_index_string(return_value, i, fbaObjectAtIndex(infoLine, 0), 1); +// } + + } + } + } +} +/* }}} */ + #endif

« previous php.cvs (#6163) next »