mysqli_stmt_store_result
(PHP 5 CVS only)
mysqli_stmt_store_result
(no version information, might be only in CVS)
mysqli_stmt->store_result -- Transfers a result set
from a prepared statement
Description
Procedural style:
bool mysqli_stmt_store_result ( object stmt)
Object oriented style (method):
class mysqli_stmt {
bool store_result ( void )
}
You must call mysql_stmt_store_result() for every query
that successfully produces a result set (SELECT, SHOW, DESCRIBE,
EXPLAIN), and only if you want to buffer the complete result
set by the client, so that the subsequent mysql_fetch()
call returns buffered data.
Note: It is unnecessary to call mysql_stmt_store_result()
for other queries, but if you do, it will not harm or cause
any notable performance in all cases. You can detect whether
the query produced a result set by checking if mysql_stmt_result_metadata()
returns NULL.
Return values
Returns TRUE on success or FALSE on failure.
See also
mysqli_prepare(), mysqli_stmt_result_metadata(), mysqli_fetch()
Example
Example 1. Object oriented style
<?php
/* Open a connection */
$mysqli = new mysqli("localhost", "my_user",
"my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER
BY Name LIMIT 20";
if ($stmt = $mysqli->prepare($query)) {
/* execute query */
$stmt->execute();
/* store result */
$stmt->store_result();
printf("Number of rows: %d.\n", $stmt->num_rows);
/* free result */
$stmt->free_result();
/* close statement */
$stmt->close();
}
/* close connection */
$mysqli->close();
?>
Example 2. Procedural style
<?php
/* Open a connection */
$link = mysqli_connect("localhost", "my_user",
"my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER
BY Name LIMIT 20";
if ($stmt = mysqli_prepare($link, $query)) {
/* execute query */
mysqli_stmt_execute($stmt);
/* store result */
mysqli_stmt_store_result($stmt);
printf("Number of rows: %d.\n", mysqli_stmt_num_rows($stmt));
/* free result */
mysqli_stmt_free_result($stmt);
/* close statement */
mysqli_stmt_close($stmt);
}
/* close connection */
mysqli_close($link);
?>
The above examples would produce the following output:
Number of rows: 20.