mysqli_stmt_bind_param stmt->bind_param Binds variables to a prepared statement as parameters Description Procedural style: boolmysqli_stmt_bind_param objectstmt stringtypes mixedvar1 mixedvar2, ... Object oriented style (method): stmt bool bind_param arraytypes mixedvar1 mixedvar2, ... mysqli_stmt_bind_param is used to bind variables for the parameter markers in the SQL statement that was passed to mysqli_prepare. The string types contains one or more characters which specify the types for the corresponding bind variables Type specification chars Character Description i corresponding variable has type integer d corresponding variable has type double s corresponding variable has type string b corresponding variable is a blob and will be send in packages
If data size of a variable exceeds max. allowed package size (max_allowed_package), you have to specify b in types and use mysqli_stmt_send_long_data to send the data in packages. The number of variables and length of string types must match the parameters in the statement.
Return values &return.success; See also mysqli_stmt_bind_result, mysqli_stmt_execute, mysqli_stmt_fetch, mysqli_prepare, mysqli_stmt_send_long_data, mysqli_stmt_errno, mysqli_stmt_error Example Object oriented style prepare("INSERT INTO CountryLanguage VALUES (?, ?, ?, ?)"); $stmt->bind_param('sssd', $code, $language, $official, $percent); $code = 'DEU'; $language = 'Bavarian'; $official = "F"; $percent = 11.2; /* execute prepared statement */ $stmt->execute(); printf("%d Row inserted.\n", $stmt->affected_rows); /* close statement and connection */ $stmt->close(); /* Clean up table CountryLanguage */ $mysqli->query("DELETE FROM CountryLanguage WHERE Language='Bavarian'"); printf("%d Row deleted.\n", $mysqli->affected_rows); /* close connection */ $mysqli->close(); ?> ]]> Procedural style ]]> The above examples would produce the following output: