Re: [PHP-CVS] cvs: php4 /ext/mysql php_mysql.c php_mysql.h
On Tue, 13 Mar 2001, Zeev Suraski wrote: zeev Tue Mar 13 14:52:53 2001 EDT Modified files: /php4/ext/mysql php_mysql.c php_mysql.h Log: Implement mysql_unbuffered_query() - uses mysql_use_result() instead of mysql_store_result() Don't you think this belongs in the NEWS file too? Derick Rethans - PHP: Scripting the Web - www.php.net - [EMAIL PROTECTED] SRM: Site Resource Manager - www.vl-srm.net - JDI Media Solutions - www.jdimedia.nl - [EMAIL PROTECTED] Boulevard Heuvelink 102 - 6828 KT Arnhem - The Netherlands - -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
zeevTue Mar 13 13:13:19 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Use a container struct instead of MYSQL directly Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.73 php4/ext/mysql/php_mysql.c:1.74 --- php4/ext/mysql/php_mysql.c:1.73 Mon Mar 12 07:14:38 2001 +++ php4/ext/mysql/php_mysql.c Tue Mar 13 13:13:19 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.73 2001/03/12 15:14:38 elixer Exp $ */ +/* $Id: php_mysql.c,v 1.74 2001/03/13 21:13:19 zeev Exp $ */ /* TODO: @@ -100,6 +100,11 @@ (mysql_field_count(mysql)0) #endif +typedef struct _php_mysql_conn { + MYSQL conn; +} php_mysql_conn; + + function_entry mysql_functions[] = { PHP_FE(mysql_connect, NULL) PHP_FE(mysql_pconnect, NULL) @@ -206,12 +211,12 @@ static void _close_mysql_link(zend_rsrc_list_entry *rsrc) { - MYSQL *link = (MYSQL *)rsrc-ptr; + php_mysql_conn *link = (php_mysql_conn *)rsrc-ptr; void (*handler) (int); MySLS_FETCH(); handler = signal(SIGPIPE, SIG_IGN); - mysql_close(link); + mysql_close(link-conn); signal(SIGPIPE, handler); efree(link); MySG(num_links)--; @@ -219,12 +224,12 @@ static void _close_mysql_plink(zend_rsrc_list_entry *rsrc) { - MYSQL *link = (MYSQL *)rsrc-ptr; + php_mysql_conn *link = (php_mysql_conn *)rsrc-ptr; void (*handler) (int); MySLS_FETCH(); handler = signal(SIGPIPE, SIG_IGN); - mysql_close(link); + mysql_close(link-conn); signal(SIGPIPE, handler); free(link); @@ -356,7 +361,7 @@ char *user=NULL, *passwd=NULL, *host_and_port=NULL, *socket=NULL, *tmp=NULL, *host=NULL; char *hashed_details=NULL; int hashed_details_length, port = MYSQL_PORT; - MYSQL *mysql=NULL; + php_mysql_conn *mysql=NULL; void (*handler) (int); zval **z_host=NULL, **z_user=NULL, **z_passwd=NULL; zend_bool free_host=0; @@ -475,14 +480,14 @@ MYSQL_DO_CONNECT_RETURN_FALSE(); } /* create the link */ - mysql = (MYSQL *) malloc(sizeof(MYSQL)); + mysql = (php_mysql_conn *) malloc(sizeof(php_mysql_conn)); #if MYSQL_VERSION_ID 32199 /* this lets us set the port number */ - mysql_init(mysql); - if (mysql_real_connect(mysql, host, user, passwd, NULL, port, socket, 0)==NULL) { + mysql_init(mysql-conn); + if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, +socket, 0)==NULL) { #else - if (mysql_connect(mysql, host, user, passwd)==NULL) { + if (mysql_connect(mysql-conn, host, user, passwd)==NULL) { #endif - php_error(E_WARNING, "%s", mysql_error(mysql)); + php_error(E_WARNING, "%s", mysql_error(mysql-conn)); free(mysql); efree(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); @@ -506,7 +511,7 @@ handler=signal(SIGPIPE, SIG_IGN); #if defined(HAVE_MYSQL_ERRNO) defined(CR_SERVER_GONE_ERROR) mysql_stat(le-ptr); - if (mysql_errno((MYSQL *)le-ptr) == CR_SERVER_GONE_ERROR) { + if (mysql_errno(((php_mysql_conn *) le-ptr)-conn) == +CR_SERVER_GONE_ERROR) { #else if (!strcasecmp(mysql_stat(le-ptr), "mysql server has gone away")) { /* the link died */ #endif @@ -523,7 +528,7 @@ } } signal(SIGPIPE, handler); - mysql = (MYSQL *) le-ptr; + mysql = (php_mysql_conn *) le-ptr; } ZEND_REGISTER_RESOURCE(return_value, mysql, le_plink); } else { /* non persistent */ @@ -561,14 +566,14 @@ MYSQL_DO_CONNECT_RETURN_FALSE(); } - mysql = (MYSQL *) emalloc(sizeof(MYSQL)); + mysql = (php_mysql_conn *) emalloc(sizeof(php_mysql_conn)); #if MYSQL_VERSION_ID 32199 /* this lets us set the port number */ - mysql_init(mysql); - if (mysql_real_connect(mysql, host, user, passwd, NULL, port, socket, 0)==NULL) { + mysql_init(mysql-conn); + if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, +socket, 0)==NULL) { #else - if (mysql_connect(mysql, host, user, passwd)==NULL) { + if (mysql_connect(mysql-conn, host, user, passwd)==NULL) { #endif -
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
zeevTue Mar 13 13:42:43 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Centralize query code Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.74 php4/ext/mysql/php_mysql.c:1.75 --- php4/ext/mysql/php_mysql.c:1.74 Tue Mar 13 13:13:19 2001 +++ php4/ext/mysql/php_mysql.c Tue Mar 13 13:42:43 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.74 2001/03/13 21:13:19 zeev Exp $ */ +/* $Id: php_mysql.c,v 1.75 2001/03/13 21:42:43 zeev Exp $ */ /* TODO: @@ -102,6 +102,7 @@ typedef struct _php_mysql_conn { MYSQL conn; + MYSQL_RES *active_result; } php_mysql_conn; @@ -898,17 +899,61 @@ /* }}} */ + + +static void php_mysql_do_query(zval **query, zval **mysql_link, int link_id, zval +**db, int use_store, zval *return_value) +{ + php_mysql_conn *mysql; + MYSQL_RES *mysql_result; + MySLS_FETCH(); + + ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, mysql_link, link_id, +"MySQL-Link", le_link, le_plink); + + if (db) { + convert_to_string_ex(db); + if (mysql_select_db(mysql-conn, (*db)-value.str.val)!=0) { + RETURN_FALSE; + } + } + + convert_to_string_ex(query); + /* mysql_query is binary unsafe, use mysql_real_query */ +#if MYSQL_VERSION_ID 32199 + if (mysql_real_query(mysql-conn, (*query)-value.str.val, +(*query)-value.str.len)!=0) { + RETURN_FALSE; + } +#else + if (mysql_query(mysql-conn, (*query)-value.str.val)!=0) { + RETURN_FALSE; + } +#endif + if(use_store == MYSQL_USE_RESULT) { + mysql_result=mysql_use_result(mysql-conn); + } else { + mysql_result=mysql_store_result(mysql-conn); + } + if (!mysql_result) { + if (PHP_MYSQL_VALID_RESULT(mysql-conn)) { /* query should have +returned rows */ + php_error(E_WARNING, "MySQL: Unable to save result set"); + RETURN_FALSE; + } else { + RETURN_TRUE; + } + } + ZEND_REGISTER_RESOURCE(return_value, mysql_result, le_result); +} + + + + + /* {{{ proto int mysql_query(string query [, int link_identifier] [, int result_mode]) Send an SQL query to MySQL */ PHP_FUNCTION(mysql_query) { zval **query, **mysql_link; -#if 0 zval **store_result; -#endif int id, use_store=MYSQL_STORE_RESULT; - php_mysql_conn *mysql; - MYSQL_RES *mysql_result; MySLS_FETCH(); switch(ZEND_NUM_ARGS()) { @@ -925,7 +970,6 @@ } id = -1; break; -#if 0 /* need to work more on the mysql_store_result() approach */ case 3: if(zend_get_parameters_ex(3, query, mysql_link, store_result)==FAILURE) { RETURN_FALSE; @@ -936,39 +980,11 @@ } id = -1; break; -#endif default: WRONG_PARAM_COUNT; break; - } - - ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, mysql_link, id, "MySQL-Link", le_link, le_plink); - - convert_to_string_ex(query); - /* mysql_query binary unsafe, use mysql_real_query */ -#if MYSQL_VERSION_ID 32199 - if (mysql_real_query(mysql-conn, (*query)-value.str.val, (*query)-value.str.len)!=0) { - RETURN_FALSE; } -#else - if (mysql_query(mysql-conn, (*query)-value.str.val)!=0) { - RETURN_FALSE; - } -#endif - if(use_store == MYSQL_USE_RESULT) { - mysql_result=mysql_use_result(mysql-conn); - } else { - mysql_result=mysql_store_result(mysql-conn); - } - if (!mysql_result) { - if (PHP_MYSQL_VALID_RESULT(mysql-conn)) { /* query should have returned rows */ - php_error(E_WARNING, "MySQL: Unable to save result set"); - RETURN_FALSE; - } else { - RETURN_TRUE; - } - } - ZEND_REGISTER_RESOURCE(return_value, mysql_result, le_result); + php_mysql_do_query(query, mysql_link, id, NULL, use_store, return_value); } /* }}} */ @@ -978,12 +994,8 @@ PHP_FUNCTION(mysql_db_query) { zval **db, **query, **mysql_link; -#if 0 zval **store_result; -#endif int id, use_store=MYSQL_STORE_RESULT; - php_mysql_conn *mysql; - MYSQL_RES *mysql_result; MySLS_FETCH(); switch(ZEND_NUM_ARGS()) { @@ -1000,7 +1012,6 @@ } id = -1; break; -#if 0 case 4:
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c php_mysql.h
zeevTue Mar 13 14:52:53 2001 EDT Modified files: /php4/ext/mysql php_mysql.c php_mysql.h Log: Implement mysql_unbuffered_query() - uses mysql_use_result() instead of mysql_store_result() Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.75 php4/ext/mysql/php_mysql.c:1.76 --- php4/ext/mysql/php_mysql.c:1.75 Tue Mar 13 13:42:43 2001 +++ php4/ext/mysql/php_mysql.c Tue Mar 13 14:52:53 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.75 2001/03/13 21:42:43 zeev Exp $ */ +/* $Id: php_mysql.c,v 1.76 2001/03/13 22:52:53 zeev Exp $ */ /* TODO: @@ -102,7 +102,7 @@ typedef struct _php_mysql_conn { MYSQL conn; - MYSQL_RES *active_result; + int active_result_id; } php_mysql_conn; @@ -114,6 +114,7 @@ PHP_FE(mysql_create_db, NULL) PHP_FE(mysql_drop_db, NULL) PHP_FE(mysql_query, NULL) + PHP_FE(mysql_unbuffered_query, NULL) PHP_FE(mysql_db_query, NULL) PHP_FE(mysql_list_dbs, NULL) PHP_FE(mysql_list_tables, NULL) @@ -194,6 +195,7 @@ static void _free_mysql_result(zend_rsrc_list_entry *rsrc) { MYSQL_RES *mysql_result = (MYSQL_RES *)rsrc-ptr; + mysql_free_result(mysql_result); } @@ -301,8 +303,6 @@ REGISTER_LONG_CONSTANT("MYSQL_NUM", MYSQL_NUM, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("MYSQL_BOTH", MYSQL_BOTH, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQL_USE_RESULT", MYSQL_USE_RESULT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQL_STORE_RESULT", MYSQL_STORE_RESULT, CONST_CS | CONST_PERSISTENT); return SUCCESS; } @@ -482,6 +482,7 @@ } /* create the link */ mysql = (php_mysql_conn *) malloc(sizeof(php_mysql_conn)); + mysql-active_result_id = 0; #if MYSQL_VERSION_ID 32199 /* this lets us set the port number */ mysql_init(mysql-conn); if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, 0)==NULL) { @@ -568,6 +569,7 @@ } mysql = (php_mysql_conn *) emalloc(sizeof(php_mysql_conn)); + mysql-active_result_id = 0; #if MYSQL_VERSION_ID 32199 /* this lets us set the port number */ mysql_init(mysql-conn); if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, 0)==NULL) { @@ -898,10 +900,8 @@ } /* }}} */ - - -static void php_mysql_do_query(zval **query, zval **mysql_link, int link_id, zval **db, int use_store, zval *return_value) +static void php_mysql_do_query_general(zval **query, zval **mysql_link, int link_id, +zval **db, int use_store, zval *return_value) { php_mysql_conn *mysql; MYSQL_RES *mysql_result; @@ -916,6 +916,21 @@ } } + + if (mysql-active_result_id) do { + int type; + MYSQL_RES *mysql_result; + + mysql_result = (MYSQL_RES *) zend_list_find(mysql-active_result_id, +type); + if (mysql_result type==le_result !mysql_eof(mysql_result)) { + php_error(E_NOTICE, "Called %s() without first fetching all +rows from a previous unbuffered query", + get_active_function_name()); + while (mysql_fetch_row(mysql_result)); + zend_list_delete(mysql-active_result_id); + mysql-active_result_id = 0; + } + } while(0); + convert_to_string_ex(query); /* mysql_query is binary unsafe, use mysql_real_query */ #if MYSQL_VERSION_ID 32199 @@ -941,19 +956,16 @@ } } ZEND_REGISTER_RESOURCE(return_value, mysql_result, le_result); + if (use_store == MYSQL_USE_RESULT) { + mysql-active_result_id = Z_LVAL_P(return_value); + } } - - - -/* {{{ proto int mysql_query(string query [, int link_identifier] [, int result_mode]) - Send an SQL query to MySQL */ -PHP_FUNCTION(mysql_query) +static void php_mysql_do_query(INTERNAL_FUNCTION_PARAMETERS, int use_store) { zval **query, **mysql_link; - zval **store_result; - int id, use_store=MYSQL_STORE_RESULT; + int id; MySLS_FETCH(); switch(ZEND_NUM_ARGS()) { @@ -970,31 +982,37 @@ } id = -1;
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
elixer Mon Mar 12 07:14:38 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Fixed prototype. Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.72 php4/ext/mysql/php_mysql.c:1.73 --- php4/ext/mysql/php_mysql.c:1.72 Sun Feb 25 22:07:04 2001 +++ php4/ext/mysql/php_mysql.c Mon Mar 12 07:14:38 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.72 2001/02/26 06:07:04 andi Exp $ */ +/* $Id: php_mysql.c,v 1.73 2001/03/12 15:14:38 elixer Exp $ */ /* TODO: @@ -705,7 +705,7 @@ #ifdef HAVE_GETINFO_FUNCS -/* {{{ proto string mysql_get_client_info([int link_identifier]) +/* {{{ proto string mysql_get_client_info(void) Returns a string that represents the client library version */ PHP_FUNCTION(mysql_get_client_info) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
shane Wed Feb 21 15:57:29 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Initalize some of the global vars. Crashed under ms debugger without having them initialized. Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.70 php4/ext/mysql/php_mysql.c:1.71 --- php4/ext/mysql/php_mysql.c:1.70 Sun Feb 18 08:59:18 2001 +++ php4/ext/mysql/php_mysql.c Wed Feb 21 15:57:28 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.70 2001/02/18 16:59:18 eschmid Exp $ */ +/* $Id: php_mysql.c,v 1.71 2001/02/21 23:57:28 shane Exp $ */ /* TODO: @@ -274,6 +274,10 @@ static void php_mysql_init_globals(zend_mysql_globals *mysql_globals) { mysql_globals-num_persistent = 0; + mysql_globals-default_socket = NULL; + mysql_globals-default_host = NULL; + mysql_globals-default_user = NULL; + mysql_globals-default_password = NULL; } @@ -349,10 +353,10 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) { - char *user, *passwd, *host_and_port, *socket, *tmp, *host=NULL; - char *hashed_details; + char *user=NULL, *passwd=NULL, *host_and_port=NULL, *socket=NULL, *tmp=NULL, +*host=NULL; + char *hashed_details=NULL; int hashed_details_length, port = MYSQL_PORT; - MYSQL *mysql; + MYSQL *mysql=NULL; void (*handler) (int); zval **z_host=NULL, **z_user=NULL, **z_passwd=NULL; zend_bool free_host=0; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
On Thu, Feb 01, 2001 at 09:36:52AM -, Stig Bakken wrote: ssb Thu Feb 1 01:36:52 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: did someone poop in the code? :-) Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.68 php4/ext/mysql/php_mysql.c:1.69 --- php4/ext/mysql/php_mysql.c:1.68 Wed Jan 31 15:35:37 2001 +++ php4/ext/mysql/php_mysql.cThu Feb 1 01:36:52 2001 @@ -1,4 +1,4 @@ -3/* +/* +--+ | PHP version 4.0 | +--+ @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.68 2001/01/31 23:35:37 eschmid Exp $ */ +/* $Id: php_mysql.c,v 1.69 2001/02/01 09:36:52 ssb Exp $ */ I only pooped in protos. -Egon -- http://www.linuxtag.de/ http://php.net/books.php http://www.concert-band.de/ http://www.php-buch.de/ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
eschmid Wed Jan 31 15:35:37 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Only two lines are allowed here. Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.67 php4/ext/mysql/php_mysql.c:1.68 --- php4/ext/mysql/php_mysql.c:1.67 Wed Jan 31 14:04:30 2001 +++ php4/ext/mysql/php_mysql.c Wed Jan 31 15:35:37 2001 @@ -1,4 +1,4 @@ -/* +3/* +--+ | PHP version 4.0 | +--+ @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.67 2001/01/31 22:04:30 elixer Exp $ */ +/* $Id: php_mysql.c,v 1.68 2001/01/31 23:35:37 eschmid Exp $ */ /* TODO: @@ -714,8 +714,7 @@ /* }}} */ /* {{{ proto string mysql_get_host_info([int link_identifier]) - Returns a string describing the type of connection in use, including the - server host name */ + Returns a string describing the type of connection in use, including the server +host name */ PHP_FUNCTION(mysql_get_host_info) { zval **mysql_link; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c php_mysql.h
elixer Wed Jan 31 14:04:30 2001 EDT Modified files: /php4/ext/mysql php_mysql.c php_mysql.h Log: Added the mysql_get_*_info() functions. # If anyone knows of a version of mysql lower then 3.20.32 that implements # all 3 of these functions, please change the conditionals. @- Added mysql_get_client_info(), mysql_get_server_info(), @ mysql_get_proto_info(), and mysql_get_host_info() functions. (Sean) Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.66 php4/ext/mysql/php_mysql.c:1.67 --- php4/ext/mysql/php_mysql.c:1.66 Wed Jan 31 13:53:29 2001 +++ php4/ext/mysql/php_mysql.c Wed Jan 31 14:04:30 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.66 2001/01/31 21:53:29 andi Exp $ */ +/* $Id: php_mysql.c,v 1.67 2001/01/31 22:04:30 elixer Exp $ */ /* TODO: @@ -73,6 +73,10 @@ # endif #endif +#if MYSQL_VERSION_ID = 32032 +#define HAVE_GETINFO_FUNCS +#endif + #if MYSQL_VERSION_ID 32133 || defined(FIELD_TYPE_TINY) #define MYSQL_HAS_TINY #endif @@ -132,6 +136,12 @@ PHP_FE(mysql_field_type, NULL) PHP_FE(mysql_field_flags, NULL) PHP_FE(mysql_escape_string, NULL) +#ifdef HAVE_GETINFO_FUNCS + PHP_FE(mysql_get_client_info, + NULL) + PHP_FE(mysql_get_host_info, + NULL) + PHP_FE(mysql_get_proto_info, + NULL) + PHP_FE(mysql_get_server_info, + NULL) +#endif /* for downwards compatability */ PHP_FALIAS(mysql, mysql_db_query, NULL) @@ -689,6 +699,115 @@ } /* }}} */ +#ifdef HAVE_GETINFO_FUNCS + +/* {{{ proto string mysql_get_client_info([int link_identifier]) + Returns a string that represents the client library version */ +PHP_FUNCTION(mysql_get_client_info) +{ + if (ZEND_NUM_ARGS() != 0) { + WRONG_PARAM_COUNT; + } + + RETURN_STRING(mysql_get_client_info(),1); +} +/* }}} */ + +/* {{{ proto string mysql_get_host_info([int link_identifier]) + Returns a string describing the type of connection in use, including the + server host name */ +PHP_FUNCTION(mysql_get_host_info) +{ + zval **mysql_link; + int id; + MYSQL *mysql; + MySLS_FETCH(); + + switch(ZEND_NUM_ARGS()) { + case 0: + id = +php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU MySLS_CC); + CHECK_LINK(id); + break; + case 1: + if (zend_get_parameters_ex(1,mysql_link)==FAILURE) { + RETURN_FALSE; + } + id = -1; + break; + default: + WRONG_PARAM_COUNT; + break; + } + + ZEND_FETCH_RESOURCE2(mysql, MYSQL *, mysql_link, id, "MySQL-Link", le_link, +le_plink); + + RETURN_STRING(mysql_get_host_info(mysql),1); +} +/* }}} */ + +/* {{{ proto int mysql_get_proto_info([int link_identifier]) + Returns the protocol version used by current connection */ +PHP_FUNCTION(mysql_get_proto_info) +{ + zval **mysql_link; + int id; + MYSQL *mysql; + MySLS_FETCH(); + + switch(ZEND_NUM_ARGS()) { + case 0: + id = +php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU MySLS_CC); + CHECK_LINK(id); + break; + case 1: + if (zend_get_parameters_ex(1,mysql_link)==FAILURE) { + RETURN_FALSE; + } + id = -1; + break; + default: + WRONG_PARAM_COUNT; + break; + } + + ZEND_FETCH_RESOURCE2(mysql, MYSQL *, mysql_link, id, "MySQL-Link", le_link, +le_plink); + + RETURN_LONG(mysql_get_proto_info(mysql)); +} +/* }}} */ + +/* {{{ proto string mysql_get_server_info([int link_identifier]) + Returns a string that represents the server version number */ +PHP_FUNCTION(mysql_get_server_info) +{ + zval **mysql_link; + int id; + MYSQL *mysql; + MySLS_FETCH(); + + switch(ZEND_NUM_ARGS()) { + case 0: + id = +php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU MySLS_CC); + CHECK_LINK(id); + break; + case 1: + if
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
elixer Tue Jan 30 16:55:29 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Fix for bug #8991. mysql_field_type() now returns "year" for columns of type YEAR. Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.63 php4/ext/mysql/php_mysql.c:1.64 --- php4/ext/mysql/php_mysql.c:1.63 Sun Jan 14 01:30:17 2001 +++ php4/ext/mysql/php_mysql.c Tue Jan 30 16:55:28 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.63 2001/01/14 09:30:17 zeev Exp $ */ +/* $Id: php_mysql.c,v 1.64 2001/01/31 00:55:28 elixer Exp $ */ /* TODO: @@ -77,6 +77,10 @@ #define MYSQL_HAS_TINY #endif +#if MYSQL_VERSION_ID 32200 +#define MYSQL_HAS_YEAR +#endif + #define MYSQL_ASSOC10 #define MYSQL_NUM 11 #define MYSQL_BOTH (MYSQL_ASSOC|MYSQL_NUM) @@ -1549,6 +1553,11 @@ case FIELD_TYPE_TIMESTAMP: return "timestamp"; break; +#ifdef MYSQL_HAS_YEAR + case FIELD_TYPE_YEAR: + return "year"; + break; +#endif case FIELD_TYPE_DATE: return "date"; break; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
elixer Tue Jan 30 17:14:55 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Fixed conditional. # Woops! Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.64 php4/ext/mysql/php_mysql.c:1.65 --- php4/ext/mysql/php_mysql.c:1.64 Tue Jan 30 16:55:28 2001 +++ php4/ext/mysql/php_mysql.c Tue Jan 30 17:14:54 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.64 2001/01/31 00:55:28 elixer Exp $ */ +/* $Id: php_mysql.c,v 1.65 2001/01/31 01:14:54 elixer Exp $ */ /* TODO: @@ -77,7 +77,7 @@ #define MYSQL_HAS_TINY #endif -#if MYSQL_VERSION_ID 32200 +#if MYSQL_VERSION_ID = 32200 #define MYSQL_HAS_YEAR #endif -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP-CVS] cvs: php4 /ext/mysql php_mysql.c
zeevSun Jan 14 01:30:17 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Don't fetch numeric indices in mysql_fetch_object() Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.62 php4/ext/mysql/php_mysql.c:1.63 --- php4/ext/mysql/php_mysql.c:1.62 Fri Jan 12 00:03:24 2001 +++ php4/ext/mysql/php_mysql.c Sun Jan 14 01:30:17 2001 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_mysql.c,v 1.62 2001/01/12 08:03:24 rasmus Exp $ */ +/* $Id: php_mysql.c,v 1.63 2001/01/14 09:30:17 zeev Exp $ */ /* TODO: @@ -1442,7 +1442,7 @@ Fetch a result row as an object */ PHP_FUNCTION(mysql_fetch_object) { - php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0); + php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC); if (return_value-type==IS_ARRAY) { return_value-type=IS_OBJECT; return_value-value.obj.properties = return_value-value.ht; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]