mysqli_stmt::get_result, mysqli_stmt_get_result


Description

Object oriented stylemysqli_result mysqli_stmt::get_result();

Procedural stylemysqli_result mysqli_stmt_get_result(mysqli_stmt stmt);

Call to return a result set from a prepared statement query.

Parameters

stmt

Procedural style only: A statement identifier returned by mysqli_stmt_init.

Return Values

Returns a resultset or FALSE on failure.

MySQL Native Driver Only

Available only with mysqlnd.

Examples

Example 20.160. Object oriented style

<?php 
$mysqli = new mysqli('127.0.0.1', 'user', 'password', 'world'); 
if($mysqli->connect_error)
{
 die('$mysqli->connect_errno: $myslqi->connect_error');
}
$query = 'SELECT Name, Population, Continent FROM Country WHERE Continent=? ORDER BY Name LIMIT 1';
$stmt = $mysqli->stmt_init();
if(!$stmt->prepare($query))
{
 print 'Failed to prepare statement\n';
}
else
{
 $stmt->bind_param('s', $continent);
 $continent_array = array('Europe','Africa','Asia','North America');
 foreach($continent_array as $continent)
 {
 $stmt->execute();
 $result = $stmt->get_result();
 while ($row = $result->fetch_array(MYSQLI_NUM))
 {
 foreach ($row as $r)
 {
 print '$r ';
 }
 print '\n';
 }
 }
}
$stmt->close();
$mysqli->close();
?>

Example 20.161. Procedural style

<?php 
$link = mysqli_connect('127.0.0.1', 'user', 'password', 'world'); 
if (!$link)
{
 $error = mysqli_connect_error();
 $errno = mysqli_connect_errno();
 print '$errno: $error\n';
 exit();
}
$query = 'SELECT Name, Population, Continent FROM Country WHERE Continent=? ORDER BY Name LIMIT 1';
$stmt = mysqli_stmt_init($link);
if(!mysqli_stmt_prepare($stmt, $query))
{
 print 'Failed to prepare statement\n';
}
else
{
 mysqli_stmt_bind_param($stmt, 's', $continent);
 $continent_array = array('Europe','Africa','Asia','North America');
 foreach($continent_array as $continent)
 {
 mysqli_stmt_execute($stmt);
 $result = mysqli_stmt_get_result($stmt);
 while ($row = mysqli_fetch_array($result, MYSQLI_NUM))
 {
 foreach ($row as $r)
 {
 print '$r ';
 }
 print '\n';
 }
 }
}
mysqli_stmt_close($stmt);
mysqli_close($link);
?>

The above examples will output:

Albania 3401200 Europe 
Algeria 31471000 Africa 
Afghanistan 22720000 Asia 
Anguilla 8000 North America 

See Also

mysqli_prepare
mysqli_stmt_result_metadata
mysqli_stmt_fetch
mysqli_fetch_array
mysqli_stmt_store_result

Retornar