English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A função mysqli_prepare() prepara a execução de uma sentença SQL
A função mysqli_prepare() prepara a execução de uma sentença SQL, retorna um manipulador de sentença, que pode ser operado posteriormente. Você pode usar marcadores de parâmetros (“?”) neste consulta, especificar valores para eles e executar mais tarde.
Aqui suporta apenas uma única sentença SQL, não suporta múltiplas sentenças SQL.
Antes de executar a sentença, é necessário usar a função mysqli_stmt_bind_param() para vincular os parâmetros de marcador. Da mesma forma, antes de obter os resultados, é necessário usar a função mysqli_stmt_bind_result() para vincular os valores de coluna retornados.
mysqli_prepare($con, $str);
Número de série | Parâmetros e descrição |
---|---|
1 | con (obrigatório) Este é um objeto que representa a conexão com o MySQL Server. |
2 | str (obrigatório) Este é o valor de string necessário para a consulta especificada. |
Se bem-sucedido, esta função retorna um objeto statement, se falhar, retornafalse。
Essa função foi introduzida inicialmente na versão do PHP5introduzido e pode ser usado em todas as versões mais recentes.
O seguinte exemplo demonstramysqli_prepare()Uso da função (estilo procedimental)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Nome VARCHAR(255), IDADE INT)"; mysqli_query($con, $query); print("Criar tabela.....\n"); $stmt = mysqli_prepare($con, "INSERT INTO Test values(?, ?)"); mysqli_stmt_bind_param($stmt, "si", $Nome, $Idade); $Nome = 'Raju'; $Idade = 25; print("Inserir registros....."); //Executar sentença mysqli_stmt_execute($stmt); //Fim da sentença mysqli_stmt_close($stmt); //Fechar conexão mysqli_close($con); ?>
Exibir resultados
Criar tabela..... Inserir registros.....
Se você verificar o conteúdo da tabela, conforme mostrado, $ menos;
mysql> select * from test; +------+------+ | Nome | IDADE | +------+------+ | Raju | 25 | +------+------+ 1 linha em conjunto (0.00 seg)
No estilo orientado a objetos, a sintaxe dessa função é$con->preparar();。A seguir está um exemplo da função This do estilo orientado a objetos $ minus;
<?php //Estabelecer conexão $con = new mysqli("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Nome VARCHAR(255), IDADE INT)"; $con -> query($query); print("Criar tabela.....\n"); $stmt = $con -> preparar( "INSERT INTO Test values(?, ?)"); $stmt -> ligar_parametros("si", $Nome, $Idade); $Nome = 'Raju'; $Idade = 25; print("Inserir registros....."); //Executar sentença $stmt->executar(); //Fim da sentença $stmt->fechar(); //Fechar conexão $con->fechar(); ?>
Exibir resultados
Criar tabela..... Inserir registros.....