mysqli_bind_param stmt->bind_param Binds variables to a prepared statement as parameters Description Procedural style: boolmysqli_bind_param objectstmt arraytypes mixedvar1 mixedvar2, ... Object oriented style (method): stmt bool bind_param arraytypes mixedvar1 mixedvar2, ... 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. 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 &return.success; Example Prepared statements 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(); ?> ]]> See also mysqli_bind_result, mysqli_execute, mysqli_fetch, mysqli_prepare, mysqli_send_long_data, mysqli_stmt_errno, mysqli_stmt_error