mysqli_stmt::bind_result, mysqli_stmt_bind_result
mysqli_stmt::bind_resultmysqli_stmt_bind_resultBinds variables to a prepared statement for result storage
Description
Object oriented stylebool mysqli_stmt::bind_result(mixed var1,
mixed ...);
Procedural stylebool mysqli_stmt_bind_result(mysqli_stmt stmt,
mixed var1,
mixed ...);
Binds columns in the result set to variables.
When mysqli_stmt_fetch is called to fetch data, the MariaDB client/server protocol places the data for the bound columns into the specified variables var1, ....Note
Note that all columns must be bound after mysqli_stmt_execute and prior to calling mysqli_stmt_fetch. Depending on column types bound variables can silently change to the corresponding PHP type.
A column can be bound or rebound at any time, even after a result set has been partially retrieved. The new binding takes effect the next time mysqli_stmt_fetch is called.
Parameters
stmt-
Procedural style only: A statement identifier returned by
mysqli_stmt_init. var1-
The variable to be bound.
Return Values
Returns TRUE on success or FALSE on failure.
Examples
Example 20.146. Object oriented style
<?php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');
if (mysqli_connect_errno()) {
printf('Connect failed: %s\n', mysqli_connect_error());
exit();
}
/* prepare statement */
if ($stmt = $mysqli->prepare('SELECT Code, Name FROM Country ORDER BY Name LIMIT 5')) {
$stmt->execute();
/* bind variables to prepared statement */
$stmt->bind_result($col1, $col2);
/* fetch values */
while ($stmt->fetch()) {
printf('%s %s\n', $col1, $col2);
}
/* close statement */
$stmt->close();
}
/* close connection */
$mysqli->close();
?>
Example 20.147. Procedural style
<?php
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'world');
/* check connection */
if (!$link) {
printf('Connect failed: %s\n', mysqli_connect_error());
exit();
}
/* prepare statement */
if ($stmt = mysqli_prepare($link, 'SELECT Code, Name FROM Country ORDER BY Name LIMIT 5')) {
mysqli_stmt_execute($stmt);
/* bind variables to prepared statement */
mysqli_stmt_bind_result($stmt, $col1, $col2);
/* fetch values */
while (mysqli_stmt_fetch($stmt)) {
printf('%s %s\n', $col1, $col2);
}
/* close statement */
mysqli_stmt_close($stmt);
}
/* close connection */
mysqli_close($link);
?>
The above examples will output:
AFG Afghanistan ALB Albania DZA Algeria ASM American Samoa AND Andorra
See Also
mysqli_stmt_bind_param
|
mysqli_stmt_execute
|
mysqli_stmt_fetch
|
mysqli_prepare
|
mysqli_stmt_prepare
|
mysqli_stmt_init
|
mysqli_stmt_errno
|
mysqli_stmt_error |