diff options
Diffstat (limited to 'ext/mysql/php_mysql.c')
-rw-r--r-- | ext/mysql/php_mysql.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c index 078e48b4d0..26177c99ce 100644 --- a/ext/mysql/php_mysql.c +++ b/ext/mysql/php_mysql.c @@ -304,6 +304,8 @@ PHP_MINIT_FUNCTION(mysql) REGISTER_LONG_CONSTANT("MYSQL_ASSOC", MYSQL_ASSOC, CONST_CS | CONST_PERSISTENT); 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; } @@ -1041,7 +1043,7 @@ PHP_FUNCTION(mysql_unbuffered_query) Send an SQL query to MySQL */ PHP_FUNCTION(mysql_db_query) { - zval **db, **query, **mysql_link; + zval **db, **query, **mysql_link, **resmode; int id, use_store=MYSQL_STORE_RESULT; MySLS_FETCH(); @@ -1059,12 +1061,21 @@ PHP_FUNCTION(mysql_db_query) } id = -1; break; + case 4: + if (zend_get_parameters_ex(4, &db, &query, &mysql_link, &resmode)==FAILURE) { + RETURN_FALSE; + } + id = -1; + convert_to_long_ex(resmode); + use_store = Z_LVAL_PP(resmode); + break; + default: WRONG_PARAM_COUNT; break; } - php_mysql_do_query_general(query, mysql_link, id, db, MYSQL_STORE_RESULT, return_value); + php_mysql_do_query_general(query, mysql_link, id, db, use_store, return_value); } /* }}} */ |