From 4baf6a643ba17d68b2c735b6be31335a49e1d407 Mon Sep 17 00:00:00 2001 From: Kamil Tekiela Date: Mon, 19 Aug 2024 13:19:49 +0200 Subject: [PATCH] Fix error message and add UPGRADING entry --- UPGRADING | 2 ++ ext/mysqli/mysqli_api.c | 8 ++++---- ext/mysqli/tests/mysqli_stmt_attr_get.phpt | 2 +- ext/mysqli/tests/mysqli_stmt_attr_set.phpt | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/UPGRADING b/UPGRADING index 0737da0fb56..8a5a903a959 100644 --- a/UPGRADING +++ b/UPGRADING @@ -874,6 +874,8 @@ PHP 8.4 UPGRADE NOTES - Mysqli: . The unused and undocumented constant MYSQLI_SET_CHARSET_DIR has been removed. + . The MYSQLI_STMT_ATTR_PREFETCH_ROWS constant has been removed. + The feature is unavailable with mysqlnd. - OpenSSL: . The OpenSSL extension now requires at least OpenSSL 1.1.1. diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 2c0dfec5dd4..24ca8cb2afe 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -1752,8 +1752,8 @@ PHP_FUNCTION(mysqli_stmt_attr_set) mode_p = &mode; break; default: - zend_argument_value_error(ERROR_ARG_POS(2), "must be one of " - "MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or STMT_ATTR_CURSOR_TYPE"); + zend_argument_value_error(ERROR_ARG_POS(2), "must be either " + "MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or MYSQLI_STMT_ATTR_CURSOR_TYPE"); RETURN_THROWS(); } @@ -1783,8 +1783,8 @@ PHP_FUNCTION(mysqli_stmt_attr_get) if ((rc = mysql_stmt_attr_get(stmt->stmt, attr, &value))) { /* Success corresponds to 0 return value and a non-zero value * should only happen if the attr/option is unknown */ - zend_argument_value_error(ERROR_ARG_POS(2), "must be one of " - "MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or STMT_ATTR_CURSOR_TYPE"); + zend_argument_value_error(ERROR_ARG_POS(2), "must be either " + "MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or MYSQLI_STMT_ATTR_CURSOR_TYPE"); RETURN_THROWS(); } diff --git a/ext/mysqli/tests/mysqli_stmt_attr_get.phpt b/ext/mysqli/tests/mysqli_stmt_attr_get.phpt index f68af2aba91..0c6f43e2ee8 100644 --- a/ext/mysqli/tests/mysqli_stmt_attr_get.phpt +++ b/ext/mysqli/tests/mysqli_stmt_attr_get.phpt @@ -50,7 +50,7 @@ require_once 'skipifconnectfailure.inc'; require_once 'clean_table.inc'; ?> --EXPECT-- -mysqli_stmt_attr_get(): Argument #2 ($attribute) must be one of MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or STMT_ATTR_CURSOR_TYPE +mysqli_stmt_attr_get(): Argument #2 ($attribute) must be either MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or MYSQLI_STMT_ATTR_CURSOR_TYPE mysqli_stmt object is already closed mysqli_stmt object is already closed done! diff --git a/ext/mysqli/tests/mysqli_stmt_attr_set.phpt b/ext/mysqli/tests/mysqli_stmt_attr_set.phpt index 217b785acb4..58a51af6fd3 100644 --- a/ext/mysqli/tests/mysqli_stmt_attr_set.phpt +++ b/ext/mysqli/tests/mysqli_stmt_attr_set.phpt @@ -169,7 +169,7 @@ require_once 'skipifconnectfailure.inc'; ?> --EXPECT-- Error: mysqli_stmt object is not fully initialized -mysqli_stmt_attr_set(): Argument #2 ($attribute) must be one of MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or STMT_ATTR_CURSOR_TYPE +mysqli_stmt_attr_set(): Argument #2 ($attribute) must be either MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH or MYSQLI_STMT_ATTR_CURSOR_TYPE mysqli_stmt::attr_set(): Argument #2 ($value) must be 0 or 1 for attribute MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH bool(true) mysqli_stmt::attr_set(): Argument #2 ($value) must be one of the MYSQLI_CURSOR_TYPE_* constants for attribute MYSQLI_STMT_ATTR_CURSOR_TYPE