mysqli_stmt::get_result

(PHP 5 >= 5.3.0, PHP 7)
Gets a result set from a prepared statement
mysqli_result mysqli_stmt::get_result ( void )

Object oriented style

Procedural style

mysqli_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().

Returns:

Returns a resultset for successful SELECT queries, or FALSE for other DML queries or on failure. The mysqli_errno() function can be used to distinguish between the two types of failure.

Examples:
Object oriented style
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php 
 
$mysqli new mysqli("127.0.0.1""user""password""world"); 
 
if($mysqli->connect_error)
{
    die("$mysqli->connect_errno: $mysqli->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();
?>
Procedural style
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?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() -

mysqli_errno() -

doc_php
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.