mysqli_stmt::execute
, mysqli_stmt_execute
mysqli_stmt::execute
mysqli_stmt_execute
Executes a prepared Query
Description
Object oriented stylebool mysqli_stmt::execute();
Procedural stylebool mysqli_stmt_execute(mysqli_stmt stmt);
Executes a query that has been previously prepared using the mysqli_prepare
function. When executed any parameter markers which exist will automatically be replaced with the appropriate data.
If the statement is UPDATE
, DELETE
, or INSERT
, the total number of affected rows can be determined by using the mysqli_stmt_affected_rows
function. Likewise, if the query yields a result set the mysqli_stmt_fetch
function is used.Note
When using mysqli_stmt_execute
, the mysqli_stmt_fetch
function must be used to fetch the data prior to performing any additional queries.
Parameters
stmt
-
Procedural style only: A statement identifier returned by
mysqli_stmt_init
.
Return Values
Returns TRUE
on success or FALSE
on failure.
Examples
Example 20.156. Object oriented style
<?php $mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world'); /* check connection */ if (mysqli_connect_errno()) { printf('Connect failed: %s\n', mysqli_connect_error()); exit(); } $mysqli->query('CREATE TABLE myCity LIKE City'); /* Prepare an insert statement */ $query = 'INSERT INTO myCity (Name, CountryCode, District) VALUES (?,?,?)'; $stmt = $mysqli->prepare($query); $stmt->bind_param('sss', $val1, $val2, $val3); $val1 = 'Stuttgart'; $val2 = 'DEU'; $val3 = 'Baden-Wuerttemberg'; /* Execute the statement */ $stmt->execute(); $val1 = 'Bordeaux'; $val2 = 'FRA'; $val3 = 'Aquitaine'; /* Execute the statement */ $stmt->execute(); /* close statement */ $stmt->close(); /* retrieve all rows from myCity */ $query = 'SELECT Name, CountryCode, District FROM myCity'; if ($result = $mysqli->query($query)) { while ($row = $result->fetch_row()) { printf('%s (%s,%s)\n', $row[0], $row[1], $row[2]); } /* free result set */ $result->close(); } /* remove table */ $mysqli->query('DROP TABLE myCity'); /* close connection */ $mysqli->close(); ?>
Example 20.157. Procedural style
<?php $link = mysqli_connect('localhost', 'my_user', 'my_password', 'world'); /* check connection */ if (mysqli_connect_errno()) { printf('Connect failed: %s\n', mysqli_connect_error()); exit(); } mysqli_query($link, 'CREATE TABLE myCity LIKE City'); /* Prepare an insert statement */ $query = 'INSERT INTO myCity (Name, CountryCode, District) VALUES (?,?,?)'; $stmt = mysqli_prepare($link, $query); mysqli_stmt_bind_param($stmt, 'sss', $val1, $val2, $val3); $val1 = 'Stuttgart'; $val2 = 'DEU'; $val3 = 'Baden-Wuerttemberg'; /* Execute the statement */ mysqli_stmt_execute($stmt); $val1 = 'Bordeaux'; $val2 = 'FRA'; $val3 = 'Aquitaine'; /* Execute the statement */ mysqli_stmt_execute($stmt); /* close statement */ mysqli_stmt_close($stmt); /* retrieve all rows from myCity */ $query = 'SELECT Name, CountryCode, District FROM myCity'; if ($result = mysqli_query($link, $query)) { while ($row = mysqli_fetch_row($result)) { printf('%s (%s,%s)\n', $row[0], $row[1], $row[2]); } /* free result set */ mysqli_free_result($result); } /* remove table */ mysqli_query($link, 'DROP TABLE myCity'); /* close connection */ mysqli_close($link); ?>
The above examples will output:
Stuttgart (DEU,Baden-Wuerttemberg) Bordeaux (FRA,Aquitaine)
See Also
mysqli_prepare
|
mysqli_stmt_bind_param |