mysqli_bind_param
(PHP 5 CVS only)
mysqli_bind_param
(no version information, might be only in CVS)
stmt->bind_param -- Binds variables to a prepared statement as parameters
Description
Procedural style:
bool
mysqli_bind_param ( object stmt, array types, mixed var1 [, mixed var2, ...])
Object oriented style (method):
class
stmt {
bool
bind_param ( array types, mixed var1 [, mixed var2, ...])
}
mysql_bind_param() is used to bind variables for the
parameter markers in the SQL statement that was passed to
mysql_prepare().
The array types specifies the types for the
diffrent bind variables. Valid array values are MYSQLI_BIND_INT, MYSQLI_BIND_DOUBLE,
MYSQLI_BIND_STRING and MYSQLI_SEND_DATA.
Note:
If data size of a variable exceeds max. allowed package size
(max_allowed_package), you have to specify MYSQLI_SEND_DATA and use
mysqli_send_long_data() to send the data in packages.
The number of variables and array values must match the number of
parameters in the statement.
Return values
Returns TRUE on success or FALSE on failure.
Example
Example 1. Prepared statements
<?php
/* --- procedural style --- */ $link = mysqli_connect("localhost", "mysql_user", "mysql_password", "mydb") or die("Could not connect: " . mysqli_connect_error());
/* create mytable */ mysqli_query($link, "CREATE TABLE mytable (a int, b int, c varchar(30))"); /* prepare statement and bind variables for insert statements */ $stmt = mysqli_prepare($link, "INSERT INTO mytable VALUES (?, ?, ?)"); mysqli_bind_param($stmt, array(MYSQLI_BIND_INT, MYSQLI_BIND_INT, MYSQLI_BIND_STRING), $a, $b, $c);
$a = 1; $b = 2; $c = "I prefer OpenSource software";
/* execute prepared statement */ mysqli_execute($stmt);
/* close statement and connection */ mysqli_close_stmt(stmt); mysqli_close(link);
/* --- object oriented style --- */ $mysql = new mysqli("localhost", "mysql_user", "mysql_password", "mydb");
/* create mytable */ $mysql->query("CREATE TABLE mytable (a int, b int, c varchar(30))"); /* prepare statement and bind parameters */ $stmt = $mysql->prepare("INSERT INTO mytable VALUES (?, ?, ?)"); $stmt->bind_param(array(MYSQLI_BIND_INT, MYSQLI_BIND_INT, MYSQLI_BIND_STRING), $a, $b, $c);
$a = 1; $b = 2; $c = "I prefer opensource software";
/* execute prepared statement */ $stmt->execute();
/* close statement and connection */ $stmt->close(); $mysql->close(); ?>
|
|